diff --git a/.gitignore b/.gitignore index 75438657..e9c42cec 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,26 @@ -.idea/ +# Dependencies +node_modules/ + +# Antora build output and cache +build/ +.cache/ +antora.log + +# Logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# Lockfile — yarn.lock is the committed source of truth +package-lock.json + +# OS .DS_Store -node_modules -build +Thumbs.db + +# Editors / IDEs +.idea/ +.vscode/ +*.swp +*~ diff --git a/antora-playbook.local.yml b/antora-playbook.local.yml new file mode 100644 index 00000000..58ac436a --- /dev/null +++ b/antora-playbook.local.yml @@ -0,0 +1,29 @@ +site: + title: TigerGraph Documentation + url: https://www.tigergraph.com/docs + start_page: savanna:overview:index.adoc + +content: + sources: + - url: . + branches: HEAD + start_paths: [modules/savanna, modules/cloud] + +antora: + extensions: + - ./lib/markdown-for-llm.js + - ./lib/llms-txt.js + +asciidoc: + extensions: + - '@asciidoctor/tabs' + +output: + dir: ./build/site + +# Local UI development: clone antora-ui as a sibling repo, run `gulp build` there, +# then build or preview cloud-docs with `npm run build:local` or `npm run dev`. +ui: + bundle: + url: ../antora-ui/public/_ + snapshot: true diff --git a/antora-playbook.yml b/antora-playbook.yml index b021658c..df42df45 100644 --- a/antora-playbook.yml +++ b/antora-playbook.yml @@ -1,6 +1,7 @@ site: - title: "Cloud Doc Test" - start_page: "savanna:overview:index.adoc" + title: TigerGraph Documentation + url: https://www.tigergraph.com/docs + start_page: savanna:overview:index.adoc content: sources: @@ -8,10 +9,19 @@ content: branches: HEAD start_paths: [modules/savanna, modules/cloud] +antora: + extensions: + - ./lib/markdown-for-llm.js + - ./lib/llms-txt.js + +asciidoc: + extensions: + - '@asciidoctor/tabs' + output: dir: ./build/site ui: bundle: - url: https://github.com/tigergraph/antora-ui/blob/main/build/ui-bundle.zip?raw=true - snapshot: true \ No newline at end of file + url: https://github.com/tigergraph/antora-ui/blob/main/build/ui-bundle-cloud.zip?raw=true + snapshot: true diff --git a/gulpfile.js b/gulpfile.js index a6b0fbfb..583c7fe1 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -7,10 +7,10 @@ const { reload: livereload } = process.env.LIVERELOAD === 'true' ? require('gulp const { series, src, watch } = require('gulp') const yaml = require('js-yaml') -const playbookFilename = 'antora-playbook.yml' +const playbookFilename = process.env.PLAYBOOK || 'antora-playbook.yml' const playbook = yaml.load(fs.readFileSync(playbookFilename, 'utf8')) const outputDir = (playbook.output || {}).dir || './build/site' -const serverConfig = { name: 'Preview Site', livereload, port: 5000, root: outputDir } +const serverConfig = { name: 'Preview Site', livereload, port: Number(process.env.PORT) || 5000, root: outputDir } const antoraArgs = ['--playbook', playbookFilename] const watchPatterns = playbook.content.sources.filter((source) => !source.url.includes(':')).reduce((accum, source) => { accum.push(`${source.url}/${source.start_path ? source.start_path + '/' : ''}antora.yml`) diff --git a/lib/llm-utils.js b/lib/llm-utils.js new file mode 100644 index 00000000..b3a160ee --- /dev/null +++ b/lib/llm-utils.js @@ -0,0 +1,25 @@ +'use strict' + +/** + * Shared helpers for LLM-oriented Antora extensions. + */ + +function stripTags (html) { + return String(html || '') + .replace(/<[^>]+>/g, '') + .replace(/&/g, '&') + .replace(/</g, '<') + .replace(/>/g, '>') + .replace(/"/g, '"') + .replace(/'/g, "'") + .replace(/ /g, ' ') + .replace(/\s+/g, ' ') + .trim() +} + +function htmlToMdUrl (url) { + if (typeof url !== 'string') return url + return url.replace(/\.html(?=[#?]|$)/, '.md') +} + +module.exports = { stripTags, htmlToMdUrl } diff --git a/lib/llms-txt.js b/lib/llms-txt.js new file mode 100644 index 00000000..f89658a3 --- /dev/null +++ b/lib/llms-txt.js @@ -0,0 +1,128 @@ +'use strict' + +/** + * Antora extension: generate /llms.txt from the site navigation model. + * + * Inspired by Couchbase's llms-txt.js, but adapted for this dual HTML+Markdown + * site: navigation links point at the generated `.md` twins rather than HTML, + * and we walk Antora's navigationCatalog directly (no separate nav-data JSON). + * + * Spec: https://llmstxt.org/ + */ + +const { htmlToMdUrl, stripTags } = require('./llm-utils') + +function absoluteUrl (siteUrl, path) { + if (!path) return path + if (/^https?:\/\//i.test(path)) return htmlToMdUrl(path) + const base = (siteUrl || '').replace(/\/$/, '') + const rel = path.startsWith('/') ? path : `/${path}` + return htmlToMdUrl(base ? `${base}${rel}` : rel) +} + +function navLabel (item) { + return stripTags(item.content) || stripTags(item.title) || 'Untitled' +} + +function renderNavItems (items, siteUrl, lines, depth) { + if (!items || !items.length) return + + for (const item of items) { + const label = navLabel(item) + const indent = ' '.repeat(depth) + const hasChildren = item.items && item.items.length + + if (item.url && item.urlType !== 'fragment') { + lines.push(`${indent}- [${label}](${absoluteUrl(siteUrl, item.url)})`) + if (hasChildren) renderNavItems(item.items, siteUrl, lines, depth + 1) + continue + } + + // Section heading without its own page + if (depth === 0 && hasChildren) { + lines.push('') + lines.push(`### ${label}`) + lines.push('') + renderNavItems(item.items, siteUrl, lines, 0) + continue + } + + if (label) lines.push(`${indent}- ${label}`) + if (hasChildren) renderNavItems(item.items, siteUrl, lines, depth + 1) + } +} + +function buildLlmsTxt (playbook, contentCatalog, navigationCatalog) { + const siteTitle = (playbook.site && playbook.site.title) || 'TigerGraph Documentation' + const siteUrl = (playbook.site && playbook.site.url) || '' + const lines = [] + + lines.push(`# ${siteTitle}`) + lines.push('') + lines.push( + '> TigerGraph developer documentation for Savanna (cloud-native graph database) and Cloud Classic. ' + + 'Prefer the Markdown (`.md`) links below when loading pages into an LLM or coding agent.' + ) + lines.push('') + lines.push(`- [HTML site](${siteUrl || '/'})`) + lines.push('') + + const components = contentCatalog.getComponents().slice().sort((a, b) => { + // Prefer Savanna first, then alphabetical + if (a.name === 'savanna') return -1 + if (b.name === 'savanna') return 1 + return a.name.localeCompare(b.name) + }) + + for (const component of components) { + // Latest / only version for each component (both currently use version "main") + const version = component.latest || component.versions[0] + if (!version) continue + + const navTrees = navigationCatalog.getNavigation(component.name, version.version) || [] + if (!navTrees.length) continue + + const versionLabel = + version.displayVersion && version.displayVersion !== 'default' + ? ` (${version.displayVersion})` + : version.version && version.version !== 'main' + ? ` (${version.version})` + : '' + + lines.push(`## ${version.title}${versionLabel}`) + lines.push('') + + for (const tree of navTrees) { + renderNavItems(tree.items || [tree], siteUrl, lines, 0) + } + + lines.push('') + } + + return `${lines.join('\n').replace(/\n{3,}/g, '\n\n').trim()}\n` +} + +module.exports.register = function () { + let snapshot + + this.on('navigationBuilt', ({ playbook, contentCatalog, navigationCatalog }) => { + snapshot = { playbook, contentCatalog, navigationCatalog } + }) + + this.on('beforePublish', ({ siteCatalog }) => { + if (!snapshot) return + + const contents = Buffer.from( + buildLlmsTxt(snapshot.playbook, snapshot.contentCatalog, snapshot.navigationCatalog) + ) + + siteCatalog.addFile({ + contents, + mediaType: 'text/plain', + out: { path: 'llms.txt' }, + path: 'llms.txt', + pub: { url: '/llms.txt' }, + src: { stem: 'llms' }, + }) + }) +} diff --git a/lib/markdown-for-llm.js b/lib/markdown-for-llm.js new file mode 100644 index 00000000..ea3c1f68 --- /dev/null +++ b/lib/markdown-for-llm.js @@ -0,0 +1,160 @@ +'use strict' + +/** + * Antora extension: emit an LLM-friendly Markdown twin for every documentation page. + * + * Unlike Couchbase's markdown-for-llm.js (which replaces HTML pages in a separate + * markdown-only playbook), this extension keeps the normal HTML site and publishes + * parallel `.md` files at the same path with a `.md` extension, e.g.: + * + * /savanna/main/get-started/connect-agent-mcp.html + * /savanna/main/get-started/connect-agent-mcp.md + * + * Markdown is derived from the resolved AsciiDoc→HTML body (includes, attributes, + * conditionals, and xrefs already applied) — never from raw `.adoc` source. + */ + +const { NodeHtmlMarkdown } = require('node-html-markdown') +const { stripTags, htmlToMdUrl } = require('./llm-utils') + +const textReplace = [ + [/[“”]/g, '"'], + [/[‘’]/g, "'"], +] + +let nhm + +const customTranslators = { + DIV: ({}) => ({ + surroundingNewlines: 2, + postprocess ({ content, node }) { + if (!node.classList || !node.classList.contains('admonitionblock')) return content + + const type = ( + Array.from(node.classList).find((v) => v !== 'admonitionblock') || 'NOTE' + ).toUpperCase() + + const bodyCell = node.querySelector('td.content') || node.querySelector('td:nth-child(2)') + const bodyHtml = bodyCell ? bodyCell.innerHTML : content + const body = nhm.translate(bodyHtml).replace(/^/gm, '> ') + return `> [!${type}]\n${body}` + }, + }), + TABLE: ({}) => ({ + surroundingNewlines: 2, + postprocess ({ content, node }) { + // Prefer a readable Markdown table when the HTML table is simple enough; + // otherwise fall back to the default text extraction from node-html-markdown. + const rows = Array.from(node.querySelectorAll('tr')) + if (!rows.length) return content + + const cells = rows.map((row) => + Array.from(row.querySelectorAll('th, td')).map((cell) => + nhm.translate(cell.innerHTML).replace(/\n+/g, ' ').trim().replace(/\|/g, '\\|') + ) + ) + const width = Math.max(...cells.map((r) => r.length)) + if (!width) return content + + const padded = cells.map((r) => { + while (r.length < width) r.push('') + return r + }) + const header = padded[0] + const sep = header.map(() => '---') + const body = padded.slice(1) + return [ + `| ${header.join(' | ')} |`, + `| ${sep.join(' | ')} |`, + ...body.map((r) => `| ${r.join(' | ')} |`), + ].join('\n') + }, + }), +} + +nhm = new NodeHtmlMarkdown({ textReplace, useInlineLinks: true }, customTranslators) + +function rewriteInternalLinks (markdown) { + // Convert in-site HTML links to their Markdown twins. + return markdown + .replace(/\]\(([^)\s]+)\.html(#[^)\s]*)?\)/g, ']($1.md$2)') + .replace(/\]\(([^)\s]+)\.html\)/g, ']($1.md)') +} + +function buildFrontmatter (page) { + const attrs = (page.asciidoc && page.asciidoc.attributes) || {} + const lines = ['---'] + lines.push(`title: ${JSON.stringify(stripTags(page.title) || page.src.stem)}`) + if (attrs.description) lines.push(`description: ${JSON.stringify(String(attrs.description))}`) + if (page.src && page.src.component) lines.push(`component: ${JSON.stringify(page.src.component)}`) + if (page.src && page.src.version) lines.push(`version: ${JSON.stringify(page.src.version)}`) + if (page.src && page.src.module) lines.push(`module: ${JSON.stringify(page.src.module)}`) + if (page.pub && page.pub.url) lines.push(`html_url: ${JSON.stringify(page.pub.url)}`) + lines.push('---', '') + return lines.join('\n') +} + +function prepareHtml (html) { + // Drop Antora heading permalink anchors so headings stay clean in Markdown. + return String(html || '').replace(/]*\bclass="[^"]*\banchor\b[^"]*"[^>]*>\s*<\/a>/gi, '') +} + +function markdownify (page) { + const title = stripTags(page.title) || (page.src && page.src.stem) || 'Untitled' + const html = prepareHtml(page.contents ? page.contents.toString() : '') + let markdown = nhm.translate(html) + markdown = rewriteInternalLinks(markdown) + + const htmlUrl = page.pub && page.pub.url + const header = [ + buildFrontmatter(page), + `[View as HTML](${htmlUrl}) · [Documentation index](/llms.txt)`, + '', + `# ${title}`, + '', + markdown.trim(), + '', + ] + return header.join('\n') +} + +function isPublishablePage (page) { + return ( + page && + page.out && + page.pub && + page.mediaType === 'text/html' && + page.src && + page.src.family === 'page' + ) +} + +module.exports.register = function () { + const pending = new Map() + + // Capture resolved document HTML before the UI layout wraps it. + this.on('documentsConverted', ({ contentCatalog }) => { + for (const page of contentCatalog.getPages(isPublishablePage)) { + const outPath = page.out.path.replace(/\.html$/, '.md') + const pubUrl = htmlToMdUrl(page.pub.url) + pending.set(outPath, { + contents: Buffer.from(markdownify(page)), + outPath, + pubUrl, + }) + } + }) + + this.on('beforePublish', ({ siteCatalog }) => { + for (const file of pending.values()) { + siteCatalog.addFile({ + contents: file.contents, + mediaType: 'text/markdown', + out: { path: file.outPath }, + path: file.outPath, + pub: { url: file.pubUrl }, + src: { stem: file.outPath.replace(/\.md$/, '') }, + }) + } + }) +} diff --git a/modules/cloud/modules/security/pages/manage-org-users.adoc b/modules/cloud/modules/security/pages/manage-org-users.adoc index de7ead1e..4ff21923 100644 --- a/modules/cloud/modules/security/pages/manage-org-users.adoc +++ b/modules/cloud/modules/security/pages/manage-org-users.adoc @@ -37,8 +37,10 @@ The privileges granted to the various roles in a TigerGraph Cloud Classic organi [NOTE] +==== User management was redesigned with the release of TigerGraph v3.6.0 in July 2022. Clusters created before then are only visible to Organization Admins and Cluster Admins. These legacy clusters exist entirely outside of the User Management system and can still be accessed by ordinary users with the URL. +==== === TigerGraph solution roles diff --git a/modules/cloud/modules/security/pages/password-policy.adoc b/modules/cloud/modules/security/pages/password-policy.adoc index d58f3b64..797eb2d4 100644 --- a/modules/cloud/modules/security/pages/password-policy.adoc +++ b/modules/cloud/modules/security/pages/password-policy.adoc @@ -11,7 +11,8 @@ No empty passwords are permitted. Each password must be at least 12 characters l * A digit `0-9` [NOTE] +==== This TigerGraph Cloud Classic password policy cannot be changed by users. - Organization Admins do not have access to change or reset user passwords in an Organization account. If you forget your password, click the btn:[Forgot Password?] button during login, or contact savanna-support@tigergraph.com for assistance. +==== diff --git a/modules/cloud/modules/security/pages/private-access/aws.adoc b/modules/cloud/modules/security/pages/private-access/aws.adoc index 885b1bf6..c9495fdf 100644 --- a/modules/cloud/modules/security/pages/private-access/aws.adoc +++ b/modules/cloud/modules/security/pages/private-access/aws.adoc @@ -39,7 +39,6 @@ AWS has detailed step-by-step instructions here: link:https://docs.aws.amazon.co [NOTE] ==== The security group assigned to the VPC Endpoint created from the command *must* allow inbound and outbound connections on port 443. - The security group assigned to the resource(s) used to communicate with the TigerGraph services through the Private Link MUST allow inbound and outbound connections on port 443. ==== diff --git a/modules/cloud/modules/security/pages/user-management.adoc b/modules/cloud/modules/security/pages/user-management.adoc index 5b1c78a1..2530a0a3 100644 --- a/modules/cloud/modules/security/pages/user-management.adoc +++ b/modules/cloud/modules/security/pages/user-management.adoc @@ -25,5 +25,7 @@ Each cluster can have many TigerGraph Cloud Classic users and each user can have For more information on how to manage users and roles in Admin Portal, see xref:gui:admin-portal:management/user-management.adoc[]. [NOTE] +==== User management was redesigned with the release of TigerGraph v3.6.0 in July 2022. Clusters created before then are only visible to Organization Admins and Cluster Admins. -These legacy clusters exist entirely outside of the User Management system and can still be accessed by ordinary users with the URL. \ No newline at end of file +These legacy clusters exist entirely outside of the User Management system and can still be accessed by ordinary users with the URL. +==== \ No newline at end of file diff --git a/modules/cloud/modules/solutions/pages/backup-and-restore.adoc b/modules/cloud/modules/solutions/pages/backup-and-restore.adoc index 5fc09f3f..8b292555 100644 --- a/modules/cloud/modules/solutions/pages/backup-and-restore.adoc +++ b/modules/cloud/modules/solutions/pages/backup-and-restore.adoc @@ -43,7 +43,6 @@ Aside from scheduled backups, you can also perform and restore backups manually [NOTE] ==== - * If you want to perform a manual backup when there are already seven copies of backups, you must delete an older backup. * The maximum number of manual backups is six, as the platform always reserves one spot for scheduled backups. ==== diff --git a/modules/cloud/modules/solutions/pages/create-a-solution.adoc b/modules/cloud/modules/solutions/pages/create-a-solution.adoc index 28a8a5b9..0af478fc 100644 --- a/modules/cloud/modules/solutions/pages/create-a-solution.adoc +++ b/modules/cloud/modules/solutions/pages/create-a-solution.adoc @@ -9,7 +9,6 @@ This page guides you through the process of creating a *free-tier* cluster (subj [CAUTION] ==== Free-tier clusters are for training, learning, and small-scale proof of concept use cases. Free-tier clusters do not support backup and restore. - For more advanced testing and learning, consider adding a payment method and using paid-tier clusters to access the backup and restore feature. ==== @@ -44,10 +43,11 @@ See the xref:reference:index.adoc[] section for more information. The default options are chosen for you automatically in the Free tier. [NOTE] +==== The xref:tigergraph-server:gsql-shell:web.adoc[GSQL Web Shell] is currently not supported on Azure-hosted clusters due to a limitation with Azure Application Gateway. - Not all TigerGraph versions that are offered on-premises are offered on TigerGraph Cloud Classic. In the dropdown list, choose the version of TigerGraph you want to run. +==== image:cluster-name-and-version.png[] diff --git a/modules/cloud/modules/start/pages/get_started.adoc b/modules/cloud/modules/start/pages/get_started.adoc index bac94e98..cc0cd8ba 100644 --- a/modules/cloud/modules/start/pages/get_started.adoc +++ b/modules/cloud/modules/start/pages/get_started.adoc @@ -24,7 +24,7 @@ The system recognizes a verified email address on the registration page and allo ==== TigerGraph recommends enterprise customers use a shared mailbox to set up an organization account. TigerGraph Cloud Classic sends important email notifications to this address, including for: - ++ * Billing and credits * Cluster behavior * New cloud products diff --git a/modules/cloud/modules/start/pages/overview.adoc b/modules/cloud/modules/start/pages/overview.adoc index e2a27a16..4ceb2553 100644 --- a/modules/cloud/modules/start/pages/overview.adoc +++ b/modules/cloud/modules/start/pages/overview.adoc @@ -2,10 +2,9 @@ :experimental: :page-aliases: cloud-overview.adoc -[NOTE] +[WARNING] ==== TigerGraph Cloud Classic is no longer available for new users. - Check out the new Savanna at https://tgcloud.io or have a look at the xref:savanna:overview:index.adoc[Documentation] for more details. ==== diff --git a/modules/savanna/antora.yml b/modules/savanna/antora.yml index 8042951b..5438b5d5 100644 --- a/modules/savanna/antora.yml +++ b/modules/savanna/antora.yml @@ -4,13 +4,15 @@ version: main display_version: default start_page: overview:index.adoc +# Nav order: Start → Workgroups/workspaces → Build → Reference +# Orphan modules security/, schema-designer/, and automate/ are intentionally omitted +# (content lives under administration/, graph-development/, get-started/, and workgroup-workspace/). nav: - modules/overview/nav.adoc - modules/get-started/nav.adoc - modules/workgroup-workspace/nav.adoc - - modules/build-ai/nav.adoc - modules/graph-development/nav.adoc - modules/rest-api/nav.adoc - - modules/integrations/nav.adoc - modules/administration/nav.adoc + - modules/integrations/nav.adoc - modules/resources/nav.adoc diff --git a/modules/savanna/modules/administration/images/Savanna_Database_Secrets.mp4 b/modules/savanna/modules/administration/images/Savanna_Database_Secrets.mp4 new file mode 100644 index 00000000..261b2f7a Binary files /dev/null and b/modules/savanna/modules/administration/images/Savanna_Database_Secrets.mp4 differ diff --git a/modules/savanna/modules/administration/nav.adoc b/modules/savanna/modules/administration/nav.adoc index 361e0865..e13898c1 100644 --- a/modules/savanna/modules/administration/nav.adoc +++ b/modules/savanna/modules/administration/nav.adoc @@ -1,12 +1,19 @@ -* xref:index.adoc[Administration] -** xref:administration:how2-invite-users.adoc[] -** xref:administration:how2-access-mgnt.adoc[] -** xref:administration:security/index.adoc[] -*** xref:administration:security/idp.adoc[] -*** xref:administration:security/password-policy.adoc[] -** xref:administration:billing/index.adoc[Billing] -*** xref:administration:billing/payment-methods.adoc[] -*** xref:administration:billing/invoices.adoc[] -** xref:administration:settings/index.adoc[Settings] -*** xref:administration:settings/how2-use-organization-mgnt.adoc[] -*** xref:administration:settings/how2-create-api-key.adoc[] \ No newline at end of file +* Administration +** xref:index.adoc[Overview] +** xref:administration:how2-invite-users.adoc[Invite users] +** xref:administration:how2-access-mgnt.adoc[Access management] +** Security +*** xref:administration:security/index.adoc[Overview] +*** xref:administration:security/idp.adoc[IDP and SSO] +*** xref:administration:security/password-policy.adoc[Password policy] +** Billing +*** xref:administration:billing/index.adoc[Overview] +*** xref:savanna:overview:pricing.adoc[Pricing] +*** xref:savanna:overview:cost-estimation.adoc[Cost estimation] +*** xref:administration:billing/payment-methods.adoc[Payment methods] +*** xref:administration:billing/invoices.adoc[Invoices] +** Settings +*** xref:administration:settings/index.adoc[Overview] +*** xref:administration:settings/how2-use-organization-mgnt.adoc[Organization management] +*** xref:administration:settings/how2-create-api-key.adoc[API keys] +*** xref:administration:settings/how2-create-database-secret.adoc[Database secrets] diff --git a/modules/savanna/modules/administration/pages/billing/index.adoc b/modules/savanna/modules/administration/pages/billing/index.adoc index e13cc760..89fb6a9c 100644 --- a/modules/savanna/modules/administration/pages/billing/index.adoc +++ b/modules/savanna/modules/administration/pages/billing/index.adoc @@ -1,24 +1,33 @@ -= Billing Overview += Billing :experimental: -The Billing Manager allows you to stay in control of your account, optimize resource usage, and manage costs effectively. -Understand the billing process and manage your subscription within TigerGraph Savanna with the billing manager UI. +Review pricing, estimate cost, and manage payment methods and invoices. image::billing-manager.png[] -Check out the links below to explore more billing information to utilize. +== Topics -== xref:savanna:administration:billing/payment-methods.adoc[] +[.start-cards,cols="2",grid=none,frame=none, separator=¦] +|=== +¦ +xref:savanna:overview:pricing.adoc[Pricing] -Learn how you can manage payment methods. +Review workspace and storage pricing for TigerGraph Savanna. +¦ +xref:savanna:overview:cost-estimation.adoc[Cost estimation] -== xref:savanna:administration:billing/invoices.adoc[] +Estimate monthly cost from workspace size, usage, and database size. +¦ +xref:savanna:administration:billing/payment-methods.adoc[Payment methods] -Learn how to view and export invoices. - -== xref:savanna:overview:pricing.adoc[] - -Here you can review pricing information in TigerGraph Savanna. +Add and manage the payment methods on your account. +¦ +xref:savanna:administration:billing/invoices.adoc[Invoices] +View and export invoices for your organization. +|=== +== Where to go next +* xref:savanna:administration:index.adoc[Administration] covers users, access, and organization settings. +* xref:savanna:resources:index.adoc[Resources] covers FAQs, support, and the billing transition FAQ. diff --git a/modules/savanna/modules/administration/pages/index.adoc b/modules/savanna/modules/administration/pages/index.adoc index 3fd5a455..39ae75b8 100644 --- a/modules/savanna/modules/administration/pages/index.adoc +++ b/modules/savanna/modules/administration/pages/index.adoc @@ -1,26 +1,33 @@ -= Administration Overview += Administration :experimental: -Here you can learn about the tools available for organizational administrators. +Invite users, manage access, configure organization settings, and create API keys. -== xref:savanna:administration:how2-invite-users.adoc[] +== Tasks -Learn how to invite new users to your organizations. +[.start-cards,cols="2",grid=none,frame=none, separator=¦] +|=== +¦ +xref:savanna:administration:how2-invite-users.adoc[Invite users] -== xref:savanna:administration:how2-access-mgnt.adoc[] +Add people to your organization so they can work in Savanna. +¦ +xref:savanna:administration:how2-access-mgnt.adoc[Manage access] -Learn how to manage access to workspaces and resources within TigerGraph Savanna. +Control who can use workspaces and other resources. +¦ +xref:savanna:administration:settings/how2-use-organization-mgnt.adoc[Organization settings] -== xref:savanna:administration:settings/how2-use-organization-mgnt.adoc[] +Configure organization-level options and preferences. +¦ +xref:savanna:administration:settings/how2-create-api-key.adoc[Create an API key] -Learn about the organization management features that allow you to configure organization settings. +Authenticate scripts and services against the control plane. +|=== -== xref:savanna:administration:settings/how2-create-api-key.adoc[] +== Where to go next -Learn how to create API keys for your organization. - -== Next Steps - -Next, learn about xref:savanna:administration:security/index.adoc[] or additional xref:savanna:resources:index.adoc[] in TigerGraph Savanna. - -Return to the xref:savanna:overview:index.adoc[Overview] page for a different topic. +* xref:savanna:administration:security/index.adoc[Security] covers password policy and identity provider setup. +* xref:savanna:administration:billing/index.adoc[Billing] covers plans, invoices, and usage. +* xref:savanna:resources:index.adoc[Resources] covers comparison tables, FAQs, and support. +* xref:savanna:overview:changelog.adoc[Changelog] covers what changed in recent Savanna releases. diff --git a/modules/savanna/modules/administration/pages/security/index.adoc b/modules/savanna/modules/administration/pages/security/index.adoc index ee3d5c54..6ed513e1 100644 --- a/modules/savanna/modules/administration/pages/security/index.adoc +++ b/modules/savanna/modules/administration/pages/security/index.adoc @@ -1,15 +1,23 @@ = Security :experimental: +Password policy and identity provider options for TigerGraph Savanna. -Here you can learn different security practices and policies in TigerGraph Savanna. +== Topics +[.start-cards,cols="2",grid=none,frame=none, separator=¦] +|=== +¦ +xref:savanna:administration:security/password-policy.adoc[Password policy] -== xref:savanna:administration:security/password-policy.adoc[] +Requirements for account passwords in your organization. +¦ +xref:savanna:administration:security/idp.adoc[Identity provider and SSO] -Learn and understand the password policy in TigerGraph Savanna. +Connect an identity provider and enable single sign-on. +|=== +== Where to go next -== xref:savanna:administration:security/idp.adoc[] - -Learn and understand IDP intergration with SSO password policy in TigerGraph Savanna. +* xref:savanna:administration:index.adoc[Administration] covers users, access, and organization settings. +* xref:savanna:administration:settings/index.adoc[Settings] covers organization management and API keys. diff --git a/modules/savanna/modules/administration/pages/security/password-policy.adoc b/modules/savanna/modules/administration/pages/security/password-policy.adoc index 3e5d1bd9..9d0ef0b0 100644 --- a/modules/savanna/modules/administration/pages/security/password-policy.adoc +++ b/modules/savanna/modules/administration/pages/security/password-policy.adoc @@ -1,7 +1,7 @@ = Password Policy :experimental: -TigerGraph Savanna user accounts have their own password requirements separate from the xref:tigergraph-server:security:password-policy.adoc[TigerGraph Server password policy]. +TigerGraph Savanna user accounts have their own password requirements separate from the https://www.tigergraph.com/docs/tigergraph-server/4.3/security/password-policy/[TigerGraph Server password policy^]. No empty passwords are permitted. Each password must be at least 12 characters long and include at least one of the following: @@ -11,7 +11,8 @@ No empty passwords are permitted. Each password must be at least 12 characters l * A digit `0-9` [NOTE] +==== This TigerGraph Savanna password policy cannot be changed by users. - Organization Admins do not have access to change or reset user passwords in an Organization account. If you forget your password, click the btn:[Forgot Password?] button during login, or contact savanna-support@tigergraph.com for assistance. +==== diff --git a/modules/savanna/modules/administration/pages/settings/how2-create-database-secret.adoc b/modules/savanna/modules/administration/pages/settings/how2-create-database-secret.adoc new file mode 100644 index 00000000..c107aa15 --- /dev/null +++ b/modules/savanna/modules/administration/pages/settings/how2-create-database-secret.adoc @@ -0,0 +1,36 @@ += Database secrets +:experimental: + +A database secret is a non-expiring credential that applications and developer tools use to authenticate with a TigerGraph database in Savanna. +Use one when you connect a tool or integration to your database, such as pyTigerGraph, TigerGraph MCP, or GraphRAG. +The secret stays valid until you delete or revoke it. + +video::Savanna_Database_Secrets.mp4[] + +== Create a database secret + +. In Savanna, select *Database Secrets* from the left navigation. +. Click btn:[Create Secret]. +. Enter a name for the database secret. +. Select the workspace connected to the database you want to access. +. Create the secret. +. Copy the generated secret and store it securely. You will not be able to view it again after you leave the page. + +== Use a database secret + +Use the generated secret to authenticate tools and integrations that connect to your TigerGraph database, including: + +* pyTigerGraph +* TigerGraph MCP. See xref:savanna:get-started:connect-agent-mcp.adoc[Connect AI tools with MCP], where the secret is passed as `TG_SECRET`. +* GraphRAG + +[CAUTION] +==== +Treat database secrets like passwords. Store them securely and do not commit them to source control. +A database secret does not expire and remains valid until you delete or revoke it. +==== + +== Where to go next + +* For secrets in Admin Portal or GraphStudio, see https://www.tigergraph.com/docs/gui/4.3/admin-portal/management/user-management/#manage-secrets[Manage secrets^] and https://www.tigergraph.com/docs/tigergraph-server/4.3/user-access/user-credentials/#_create_a_secret[Create a secret^]. +* Create control-plane credentials instead: xref:savanna:administration:settings/how2-create-api-key.adoc[API keys]. diff --git a/modules/savanna/modules/administration/pages/settings/index.adoc b/modules/savanna/modules/administration/pages/settings/index.adoc index be5367f1..cb91f8cd 100644 --- a/modules/savanna/modules/administration/pages/settings/index.adoc +++ b/modules/savanna/modules/administration/pages/settings/index.adoc @@ -1,18 +1,31 @@ -= Administrative Settings Overview += Settings :experimental: -Here you can learn about the configurations for an organization. +Configure organization options, create API keys for the control plane, and create database secrets for the data plane. -== xref:savanna:administration:settings/how2-use-organization-mgnt.adoc[] +== Tasks -Learn about the organization management features that allow you to configure organization settings. +[.start-cards,cols="2",grid=none,frame=none, separator=¦] +|=== +¦ +xref:savanna:administration:settings/how2-use-organization-mgnt.adoc[Organization settings] -== xref:savanna:administration:settings/how2-create-api-key.adoc[] +Configure organization-level options and preferences. +¦ +xref:savanna:administration:settings/how2-create-api-key.adoc[Create an API key] -Learn how to create API keys for your organization. +Authenticate scripts and services against the control plane. +¦ +xref:savanna:administration:settings/how2-create-database-secret.adoc[Create a database secret] -== Next Steps +Authenticate tools and agents against a workspace database. +¦ +xref:savanna:administration:security/index.adoc[Security settings] -Next, learn about xref:savanna:administration:security/index.adoc[] or additional xref:savanna:resources:index.adoc[] in TigerGraph Savanna. +Set the password policy and configure SSO with your identity provider. +|=== -Return to the xref:savanna:overview:index.adoc[Overview] page for a different topic. +== Where to go next + +* xref:savanna:resources:index.adoc[Resources] covers comparison tables, FAQs, and support. +* xref:savanna:overview:changelog.adoc[Changelog] covers what changed in recent Savanna releases. diff --git a/modules/savanna/modules/build-ai/nav.adoc b/modules/savanna/modules/build-ai/nav.adoc index c60fe40b..62321b8b 100644 --- a/modules/savanna/modules/build-ai/nav.adoc +++ b/modules/savanna/modules/build-ai/nav.adoc @@ -1,2 +1 @@ -* xref:index.adoc[] - +* xref:index.adoc[Build a graph with AI] diff --git a/modules/savanna/modules/build-ai/pages/index.adoc b/modules/savanna/modules/build-ai/pages/index.adoc index 1e1bf244..dac2346b 100644 --- a/modules/savanna/modules/build-ai/pages/index.adoc +++ b/modules/savanna/modules/build-ai/pages/index.adoc @@ -1,7 +1,7 @@ -= Build a Graph with AI += Build a graph with AI :experimental: -AI Build takes you from CSV files to a ready‑to‑explore graph in minutes. It drafts a schema, loads your data, installs queries, and surfaces quick insights—fully guided and automated. +AI Build takes you from CSV files to a ready-to-explore graph in minutes. It drafts a schema, loads your data, installs queries, and surfaces quick insights, fully guided and automated. == Prerequisites @@ -81,10 +81,10 @@ image::6.2-build-action.png[] * If an error appears during schema creation or data load, adjust your CSV/TSV files (headers, separators, column counts) and try again. * Keep the page open while AI builds the graph. -== Next Steps +== Where to go next -* Explore your graph: xref:savanna:graph-development:explore-graph/index.adoc[] -* Edit schema visually: xref:savanna:graph-development:design-schema/index.adoc[] -* Write queries: xref:savanna:graph-development:gsql-editor/index.adoc[] +* xref:savanna:graph-development:explore-graph/index.adoc[Explore graph] +* xref:savanna:graph-development:design-schema/index.adoc[Design a schema] +* xref:savanna:graph-development:gsql-editor/index.adoc[GSQL Editor] diff --git a/modules/savanna/modules/get-started/images/mcp-install-cursor.svg b/modules/savanna/modules/get-started/images/mcp-install-cursor.svg new file mode 100644 index 00000000..3dacb7f1 --- /dev/null +++ b/modules/savanna/modules/get-started/images/mcp-install-cursor.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/modules/savanna/modules/get-started/images/mcp-install-vscode.svg b/modules/savanna/modules/get-started/images/mcp-install-vscode.svg new file mode 100644 index 00000000..0c1f164e --- /dev/null +++ b/modules/savanna/modules/get-started/images/mcp-install-vscode.svg @@ -0,0 +1 @@ +VS Code: Install ServerVS CodeInstall Server \ No newline at end of file diff --git a/modules/savanna/modules/get-started/nav.adoc b/modules/savanna/modules/get-started/nav.adoc index ce3cdb74..ea9fcc20 100644 --- a/modules/savanna/modules/get-started/nav.adoc +++ b/modules/savanna/modules/get-started/nav.adoc @@ -1,3 +1,3 @@ -* xref:index.adoc[Get Started] -** xref:how2-signup.adoc[Sign Up] -** xref:how2-login.adoc[Log In] \ No newline at end of file +* Start here +** xref:first-graph-ui.adoc[Build your graph in Savanna] +** xref:connect-agent-mcp.adoc[Connect AI tools with MCP] diff --git a/modules/savanna/modules/get-started/pages/connect-agent-mcp.adoc b/modules/savanna/modules/get-started/pages/connect-agent-mcp.adoc new file mode 100644 index 00000000..53952601 --- /dev/null +++ b/modules/savanna/modules/get-started/pages/connect-agent-mcp.adoc @@ -0,0 +1,420 @@ += Connect AI tools with MCP +:experimental: + +TigerGraph MCP connects AI development tools to your TigerGraph database, allowing agents to manage graphs, explore schemas, query graph data, load data, and perform database operations using MCP tools. + +This page explains what MCP is, what TigerGraph MCP server is, and gets you from install to a successful tool call in Cursor, VS Code, Claude Code, or Claude Desktop. + +== What is MCP? + +The link:https://modelcontextprotocol.io/[Model Context Protocol^] (MCP) is an open standard that connects AI applications to external systems through a common interface. +Instead of hardcoding a custom integration for every service, an *MCP client* (your AI tool) connects to an *MCP server* that exposes capabilities as *tools* the model can call. + +When you ask the agent to do something, it chooses which tools to call, runs them, and uses the results to complete your request. +Because MCP is standardized, the same server works across any MCP-capable client, such as Cursor, VS Code, Claude Code, and Claude Desktop. + +How it works in practice: + +* The AI client decides *when* to call a tool based on your prompt and the conversation, so you do not have to invoke tools manually. +* Each tool call runs *during* response generation, so the agent works with live data from the connected system instead of relying on training data or guesswork. +* Tools can both read and act, so an agent can inspect a system and, when you ask, change it. + +== What is TigerGraph MCP server? + +The TigerGraph MCP server is TigerGraph's implementation of the Model Context Protocol, distributed as the `tigergraph-mcp` Python package on link:https://pypi.org/project/tigergraph-mcp/[PyPI^]. +It is the *server* your AI tool (the MCP client) connects to. +It runs locally as a command-based server that your MCP client launches, and turns TigerGraph database operations into MCP tools your agent can call: creating and managing graphs, exploring schemas, reading and writing vertices and edges, running GSQL, creating loading jobs, and working with vector search. + +Once connected, your AI tool works with your Savanna database in natural language. +You describe what you want; the agent picks the right TigerGraph tools, runs them against the database you configured, and returns the results, with no hand-written REST calls or pasted JSON. + +For how the pieces fit together, see <>. + +== What you can do + +TigerGraph MCP gives your agent hands-on access to the database, so you work in plain language instead of REST calls and GSQL boilerplate. From a single prompt, the agent can: + +* *Design and evolve graphs.* Create graphs, read and change schemas, and reshape the data model as your requirements shift. +* *Read and write graph data.* Fetch vertices and edges, traverse neighbors, and upsert new data without leaving the chat. +* *Query the graph.* Ask a question in plain English; the agent writes and runs the GSQL, fetches the results, and explains them back to you. It can also install and reuse queries for repeatable, production-grade workflows. +* *Load at scale.* Create loading jobs, pull from the sources Savanna supports, and track job status as data lands. +* *Power vector search.* Manage vector attributes, upsert embeddings, and run top-k similarity search for RAG and recommendations. +* *Check its own work.* Inspect vertex, edge, and degree counts, and discover the tools and workflows it needs for multi-step tasks. + +Under the hood that is dozens of tools, but you never call them directly. You describe the goal; the agent picks the tools, runs them against your database, and reports back with real results. + +== Before you start + +* A running Savanna xref:savanna:workgroup-workspace:workspaces/workspace.adoc[workspace] with an attached database. If you do not have one yet, xref:first-graph-ui.adoc[build a graph in the console] first. +* A database secret for that database. See xref:savanna:administration:settings/how2-create-database-secret.adoc[Create a database secret]. +* link:https://docs.astral.sh/uv/[uv^] installed, if you use the recommended `uvx` path. + +== How the server runs + +You do not start the server yourself. Your MCP client launches it from the command in your configuration. + +The TigerGraph MCP server is distributed as a Python package. The recommended command uses `uvx` (bundled with `uv`), which runs it in an isolated environment with no separate install, the way `npx` runs npm tools. + +[source,json] +---- +"command": "uvx", +"args": ["tigergraph-mcp"] +---- + +Prefer to install it yourself? Run `pip install tigergraph-mcp` and set `"command": "tigergraph-mcp"` instead. + +== Configure your connection + +Set three environment variables in your MCP client configuration. + +[cols="1,1,2",options="header"] +|=== +|Variable |Required |What to use + +|`TG_HOST` +|Yes +|Your Savanna workspace URL. Open *Workspaces*, select the workspace, and copy its URL. + +|`TG_SECRET` +|Yes +|A database secret for that workspace's database. See xref:savanna:administration:settings/how2-create-database-secret.adoc[Create a database secret]. + +|`TG_GRAPHNAME` +|No +|The graph to use by default. Set it if most of your work is on one graph. Leave it out if you work across several. You can still pass a different graph on any single tool call. +|=== + +== Connect your AI tool + +Pick your client, install the server, then fill in your own values. +The install links carry placeholders only, so you never enter credentials on this page. + +[tabs] +==== +Cursor:: ++ +-- +image:mcp-install-cursor.svg[Add to Cursor,role=install-badge,link="cursor://anysphere.cursor-deeplink/mcp/install?name=tigergraph&config=eyJjb21tYW5kIjoidXZ4IiwiYXJncyI6WyJ0aWdlcmdyYXBoLW1jcCJdLCJlbnYiOnsiVEdfSE9TVCI6IllPVVJfV09SS1NQQUNFX1VSTCIsIlRHX0dSQVBITkFNRSI6IllPVVJfR1JBUEhfTkFNRSIsIlRHX1NFQ1JFVCI6IllPVVJfREFUQUJBU0VfU0VDUkVUIn19"] + +To open Cursor and add the TigerGraph MCP server automatically, select *Add to Cursor*. +You can also add the following to your `~/.cursor/mcp.json` file. +To learn more, see the link:https://cursor.com/docs/mcp[Cursor documentation^]. + +[source,json] +---- +{ + "mcpServers": { + "tigergraph": { + "command": "uvx", + "args": ["tigergraph-mcp"], + "env": { + "TG_HOST": "YOUR_WORKSPACE_URL", + "TG_GRAPHNAME": "YOUR_GRAPH_NAME", + "TG_SECRET": "YOUR_DATABASE_SECRET" + } + } + } +} +---- +-- + +Claude Desktop:: ++ +-- +Add the following to your Claude Desktop config file. +On macOS open `~/Library/Application Support/Claude/claude_desktop_config.json`, and on Windows open `%APPDATA%\Claude\claude_desktop_config.json`. +You can also use *Settings → Developer → Edit Config*. +Save the file, then restart Claude Desktop fully. +To learn more, see the link:https://modelcontextprotocol.io/quickstart/user[Claude Desktop documentation^]. + +[source,json] +---- +{ + "mcpServers": { + "tigergraph": { + "command": "uvx", + "args": ["tigergraph-mcp"], + "env": { + "TG_HOST": "YOUR_WORKSPACE_URL", + "TG_GRAPHNAME": "YOUR_GRAPH_NAME", + "TG_SECRET": "YOUR_DATABASE_SECRET" + } + } + } +} +---- +-- + +VS Code:: ++ +-- +image:mcp-install-vscode.svg[Install Server,role=install-badge,link="https://vscode.dev/redirect/mcp/install?name=tigergraph&config=%7B%22type%22%3A%22stdio%22%2C%22command%22%3A%22uvx%22%2C%22args%22%3A%5B%22tigergraph-mcp%22%5D%2C%22env%22%3A%7B%22TG_HOST%22%3A%22YOUR_WORKSPACE_URL%22%2C%22TG_GRAPHNAME%22%3A%22YOUR_GRAPH_NAME%22%2C%22TG_SECRET%22%3A%22YOUR_DATABASE_SECRET%22%7D%7D"] + +To open VS Code and add the TigerGraph MCP server automatically, select *Install Server*. +You can also add the following to a workspace file at `.vscode/mcp.json`, or run *MCP: Open User Configuration* for a user level file. +To learn more, see the link:https://code.visualstudio.com/docs/copilot/chat/mcp-servers[VS Code documentation^]. + +[source,json] +---- +{ + "servers": { + "tigergraph": { + "type": "stdio", + "command": "uvx", + "args": ["tigergraph-mcp"], + "env": { + "TG_HOST": "YOUR_WORKSPACE_URL", + "TG_GRAPHNAME": "YOUR_GRAPH_NAME", + "TG_SECRET": "YOUR_DATABASE_SECRET" + } + } + } +} +---- +-- + +Claude Code:: ++ +-- +Add the TigerGraph MCP server from the terminal, then restart Claude Code. + +[source,bash] +---- +claude mcp add --transport stdio tigergraph \ + --env TG_HOST=YOUR_WORKSPACE_URL \ + --env TG_GRAPHNAME=YOUR_GRAPH_NAME \ + --env TG_SECRET=YOUR_DATABASE_SECRET \ + -- uvx tigergraph-mcp +---- + +You can also add the following to a project file at `.mcp.json`. +To learn more, see the link:https://code.claude.com/docs/en/mcp[Claude Code documentation^]. + +[source,json] +---- +{ + "mcpServers": { + "tigergraph": { + "command": "uvx", + "args": ["tigergraph-mcp"], + "env": { + "TG_HOST": "YOUR_WORKSPACE_URL", + "TG_GRAPHNAME": "YOUR_GRAPH_NAME", + "TG_SECRET": "YOUR_DATABASE_SECRET" + } + } + } +} +---- +-- +==== + +Once the TigerGraph MCP server is configured with the values from xref:connect-agent-mcp.adoc#_configure_your_connection[Configure your connection], ask your agent: + +---- +List the graphs available in my TigerGraph database. +---- + +If the agent returns graph information, the connection is working. + +== Try TigerGraph MCP + +After the connection works, try these prompts. +Start with read-only requests. + +=== Explore your database + +---- +List the graphs available in my TigerGraph database. +---- + +---- +Show the schema of my graph and explain how the vertex types are connected. +---- + +---- +Show the vertex and edge counts for my graph. +---- + +=== Explore graph data + +---- +Find the neighbors of a sample vertex and explain the relationships. +---- + +---- +Show me a few sample vertices from this graph. +---- + +=== Query the graph + +---- +Write a GSQL query to find the top 10 vertices by degree. +---- + +Review the query before allowing the agent to install or run it. + +=== Load data + +---- +Show me the TigerGraph MCP tools available for loading data. +---- + +---- +Help me create a loading job for this CSV file. +---- + +=== Discover MCP capabilities + +---- +What TigerGraph tools do you have available? +---- + +[[how-it-works]] +== How it works + +The TigerGraph MCP server runs locally as a command-based MCP server: + +---- +Cursor / VS Code / Claude Code / Claude Desktop + | + | MCP over stdio + v + tigergraph-mcp + | + | pyTigerGraph + v + TigerGraph Savanna +---- + +* The AI application launches `tigergraph-mcp` on your machine. +* The TigerGraph MCP server exposes TigerGraph operations as MCP tools. +* The AI application decides which tools to call based on your request. +* The TigerGraph MCP server uses your configured Savanna connection details to perform the operations. +* Tool results return to the AI application and appear in its response. + +=== Tool behavior + +Your AI client determines which TigerGraph MCP tools to use based on your prompt and the current conversation. + +Example: + +---- +"Show me my graph schema" + ↓ +AI chooses a schema tool + ↓ +TigerGraph MCP server + ↓ +Savanna +---- + +For a more complex task such as "Load this customer CSV and verify the data", the agent may: + +. Inspect the graph schema +. Discover loading tools +. Create or run a loading job +. Check vertex and edge counts +. Return the result + +[CAUTION] +==== +Actions performed through TigerGraph MCP run against the connected database and can modify or permanently delete data and graph resources. Review destructive tool calls carefully before approving them, particularly in production. +==== + +== Troubleshooting + +=== `uvx` is not found + +macOS: + +[source,bash] +---- +which uvx +---- + +Windows: + +[source,powershell] +---- +where.exe uvx +---- + +If the MCP client cannot resolve `uvx`, set `command` to the absolute path returned by your shell. + +=== `tigergraph-mcp` is not found + +Verify the package is installed: + +[source,bash] +---- +pip install tigergraph-mcp +---- + +Then locate the executable: + +macOS: + +[source,bash] +---- +which tigergraph-mcp +---- + +Windows: + +[source,powershell] +---- +where.exe tigergraph-mcp +---- + +Use that absolute path as `command` if the client cannot find it on `PATH`. + +=== Works in the terminal but not in the MCP client + +Desktop applications can use a different `PATH` than your terminal. +Use the full executable path in `command`. + +Examples: + +[source,json] +---- +"command": "/absolute/path/to/uvx" +---- + +[source,json] +---- +"command": "C:\\absolute\\path\\to\\uvx.exe" +---- + +Do not assume a fixed install directory. +The same approach applies to `tigergraph-mcp`. + +=== MCP starts but cannot connect + +Check that: + +* `TG_HOST` points to the intended Savanna workspace +* `TG_SECRET` is valid for the intended database +* `TG_GRAPHNAME`, if present, matches a graph in that database +* You remove `TG_GRAPHNAME` when a graph-specific default is unnecessary +* The selected workspace and database are available + +=== Windows JSON paths + +Escape backslashes in JSON: + +[source,json] +---- +"command": "C:\\path\\to\\uvx.exe" +---- + +== Feedback and contributions + +Found a bug or unexpected behavior? Open an issue in the link:https://github.com/tigergraph/tigergraph-mcp[TigerGraph MCP GitHub repository^]. If you have a fix, submit a pull request. + +== Related + +* Same outcomes without an agent: xref:savanna:workgroup-workspace:workspaces/connect-via-api.adoc[Connect via APIs] +* Console snippet generator: xref:savanna:workgroup-workspace:workspaces/connect-via-api.adoc[Connect via APIs] +* Load data in the console: xref:savanna:graph-development:load-data/index.adoc[Load data] +* Write queries in the console: xref:savanna:graph-development:gsql-editor/index.adoc[GSQL Editor] diff --git a/modules/savanna/modules/get-started/pages/first-graph-ui.adoc b/modules/savanna/modules/get-started/pages/first-graph-ui.adoc new file mode 100644 index 00000000..3145c57d --- /dev/null +++ b/modules/savanna/modules/get-started/pages/first-graph-ui.adoc @@ -0,0 +1,75 @@ += Build your graph in Savanna +:experimental: +:page-aliases: index.adoc, how2-signup.adoc, how2-login.adoc + +This is the browser path to a working graph on TigerGraph Savanna: a running workspace, a schema you designed, data loaded against it, and a GSQL query returning results. Budget about fifteen minutes. The same graph is reachable afterward from an AI agent (xref:connect-agent-mcp.adoc[Connect AI tools with MCP]); the interface differs, the graph does not. + +You'll need a https://tgcloud.io[Savanna account^] and some data to load. That can be a local CSV, TSV, or JSON file, or a source Savanna connects to directly, Amazon S3, Google Cloud Storage, Azure Blob Storage, Snowflake, and xref:savanna:graph-development:load-data/index.adoc[more]. Building the schema yourself is worth the extra time: you learn how Savanna models data, and you end up with a graph shaped for the questions you actually want to ask. + +== Set up a workgroup and workspace + +Savanna nests your work in two objects. A *workgroup* is a container for related workspaces and the boundary for access control; name it after a team or project. A *workspace* is the compute that runs your graph, and it's what you start, stop, and resize. + +When you first register, Savanna creates a workgroup and a workspace for you. Wait until the workspace status is *active*, then continue below. You do not need to create either one to try the product. + +To add another project later, *Create Workgroup* is a two-step wizard: the workgroup, then its first workspace. Choose *Read/Write* so the workspace can load data and install queries (a Read-Only workspace can query an existing graph but not load into it). You can resize later without rebuilding. + +Full screens: xref:savanna:workgroup-workspace:workgroups/how2-create-a-workgroup.adoc[create a workgroup] and xref:savanna:workgroup-workspace:workspaces/how2-create-a-workspace.adoc[create a workspace]. + +== Model the graph + +Open *Design Schema* from the navigation menu, the workspace page, or the GSQL Editor. The schema is the structure of your graph: which entities exist, how they connect, and what each one stores. + +Start by creating a graph from the graph selector dropdown and giving it a name. Your first graph on a workspace can take up to two minutes while the services warm up. + +Then lay out the model: + +* *Vertices* are your entities, the nouns in your domain: a user, a product, a transaction, an account. Add one from the vertex button, or hold kbd:[V] and click on the canvas, then set its name and attributes in the properties panel. +* *Edges* are the relationships between them, the verbs: _placed_, _belongs to_, _transferred to_. Drag from the border of a vertex and drop onto another to connect two existing vertices, or drop onto empty canvas to create a new vertex and edge together. Name the edge and give it attributes if the relationship itself carries data, such as a timestamp or an amount. +* *Attributes* are the properties on either one, typed as strings, integers, booleans, or dates. + +Give each vertex type a primary key that uniquely identifies an entity, since that's what the loader matches on when it creates and deduplicates vertices. Under *Advanced Settings* you can index non-primary attributes you expect to filter on, and add a reverse edge on a directed edge when you need to traverse it in both directions. + +Modeling reference: xref:savanna:graph-development:design-schema/index.adoc[Schema Designer]. + +== Load your data + +Open *Load Data* and select an active workspace, then pick your connector. Savanna ships step-by-step flows for xref:savanna:graph-development:load-data/load-from-local.adoc[local files], xref:savanna:graph-development:load-data/load-from-s3.adoc[Amazon S3], xref:savanna:graph-development:load-data/load-from-gcs.adoc[Google Cloud Storage], and xref:savanna:graph-development:load-data/load-from-blob.adoc[Azure Blob Storage], with xref:savanna:graph-development:load-data/load-from-snowflake.adoc[Snowflake] and xref:savanna:graph-development:load-data/jdbc.adoc[JDBC] alongside them. Connectors without a guided flow yet hand you a GSQL template to finish in the editor instead. + +The guided flow moves through three decisions: + +*Configure the file.* Savanna detects delimiters and line breaks and shows you the parsed result. If the columns split wrong, change the delimiter, end-of-line, or quoting options. An enclosing character such as a double quote overrides the delimiter inside a token, which is what you want when string values contain commas. You can rename header columns here to something readable, since those names are what you'll map against. + +*Map columns to the schema.* For each vertex and edge type, choose which source column feeds which attribute. *Quick Map* does the obvious matches in one pass: _map all to target_ aligns existing attributes with matching headers, while _map all from source_ also creates new attributes for headers that don't match anything yet. Where the source doesn't quite fit the target, a xref:savanna:graph-development:load-data/token-function.adoc[token function] transforms the value as it loads. + +*Confirm and run.* Savanna shows you _Schema to be changed_ and _Data to be loaded_ before anything executes. Read the schema diff carefully; some schema changes drop existing data, and the warning on that screen is the last checkpoint. Confirm to start the loading jobs, then watch their *Status* as they run. + +Load vertices before the edges that reference them, so each edge finds both endpoints already present. + +== Query it + +Open the *GSQL Editor*. Queries are written in GSQL, TigerGraph's query language, and the editor gives you a file list on the left, the editing panel in the middle, results at the bottom, and the Schema Designer on the right when you need to check a type. + +Create a query with the btn:[+] next to your graph in the Query List. A useful first query starts from one vertex and walks one hop out: select a vertex by its primary key, traverse an edge type, and return the neighbors. That single traversal is the thing a graph database does that a relational join makes painful, so it's worth writing by hand once. + +A custom query has to be *installed* before it can run. Select it in the Query List and click btn:[Install], then run it and read the result panel. Expect vertices, edges, paths, or computed values depending on what your query returns. + +For a visual read on the same data, *Explore Graph* lets you walk vertices and their neighbors, and xref:savanna:graph-development:explore-graph/how2-use-pattern-search.adoc[pattern search] finds paths between them without writing GSQL. It's the fastest way to confirm your edges connect what you think they connect. + +Editing, installing, and sharing queries: xref:savanna:graph-development:gsql-editor/how2-edit-gsql-query.adoc[GSQL Editor guide]. + +== You're done when + +* The workspace is *active* and *Read/Write*. +* Your vertex and edge types appear in the Schema Designer for the graph you created. +* The loading jobs finished with a successful *Status* on the Load Data screen. +* An installed GSQL query returns graph data or computed values, or Explore Graph renders your vertices and edges. + +If a loading job fails, the mapping is the usual cause: check that the parsed columns line up with the attributes you targeted and that primary keys aren't empty in the source. Fix the mapping and rerun the job; you don't need to recreate the workspace or the schema. + +== Where to go next + +* Point an AI agent at the same graph: xref:connect-agent-mcp.adoc[Connect AI tools with MCP]. +* Model, load, and query in depth: xref:savanna:graph-development:index.adoc[Build]. +* In a hurry, or want a schema drafted for you? xref:savanna:build-ai:index.adoc[Build a graph with AI] infers one from your files, and a xref:savanna:integrations:solutions.adoc[Marketplace solution] ships with schema, data, and queries already in place. +* Unfamiliar term? xref:savanna:resources:glossary.adoc[Glossary]. diff --git a/modules/savanna/modules/get-started/pages/how2-login.adoc b/modules/savanna/modules/get-started/pages/how2-login.adoc deleted file mode 100644 index 4f13d132..00000000 --- a/modules/savanna/modules/get-started/pages/how2-login.adoc +++ /dev/null @@ -1,40 +0,0 @@ -= How to Log In -:experimental: - -After first xref:get-started:how2-signup.adoc[signing up] or being xref:savanna:administration:how2-invite-users.adoc[invited by your organization], users must btn:[Log In]. -This guide will walk you through the necessary steps. - -== Log In - -There are two ways to log in, through your account you created through signing up or though your organization - -=== 1) Your Account - -If you click btn:[Log In] on the https://tgcloud.io[TigerGraph Savanna landing page]. -TigerGraph Savanna supports users to log in via Google, LinkedIn, or via a username/password. - -[TIP] -==== -You will be logged into the last active organization. -You can switch to another organization via the user btn:[settings] menu. -==== - -image::signup.png[width=450] - -=== 2) Your Organization - -For organizations specific logging methods, click the btn:[Login with organization] button. -You must provide an organization name before entering your username and password. - -[NOTE] -==== -If you were invited by a member of your organization and you do not know the name used for the organization account, contact your organization’s administrator. -==== - -image::orglogin-1.png[width=450] - -== Next Steps - -Once logged in, learn more about xref:savanna:workgroup-workspace:index.adoc[] or jump right into creating a xref:workgroup-workspace:workgroups/workgroup.adoc[Workgroup] and xref:workgroup-workspace:workspaces/workspace.adoc[Workspaces]. - -Return to the xref:savanna:overview:index.adoc[Overview] page for a different topic. diff --git a/modules/savanna/modules/get-started/pages/how2-signup.adoc b/modules/savanna/modules/get-started/pages/how2-signup.adoc deleted file mode 100644 index bfc13f31..00000000 --- a/modules/savanna/modules/get-started/pages/how2-signup.adoc +++ /dev/null @@ -1,33 +0,0 @@ -= How to Sign Up -:experimental: - -In order to use TigerGraph Savanna, users must first btn:[Sign Up]. -This guide will walk you through the necessary steps. - -== Sign Up -. Click btn:[Sign Up] https://tgcloud.io[on the TigerGraph Savanna landing page]. -+ -image::signup.png[width=450] - -. If you are signing up for the first time using username and password registration, you will be prompted to enter a password. -+ -[CAUTION] -Please refer to our xref:savanna:administration:security/password-policy.adoc[] that applies to TigerGraph Savanna. - -. When registering for a new TigerGraph Savanna account, we will ask to confirm your email address. -btn:[ Click ] the link in your email to verify, then log in using your username and password. -+ -[NOTE] -==== -We automatically create a new organization for you. -You can update your organization on the xref:savanna:administration:settings/how2-use-organization-mgnt.adoc[] page. -==== - -== Next Steps - -The next step is to xref:how2-login.adoc[Log in] your new TigerGraph Savanna. - -Or return to the xref:savanna:overview:index.adoc[Overview] page for a different topic. - - - diff --git a/modules/savanna/modules/get-started/pages/index.adoc b/modules/savanna/modules/get-started/pages/index.adoc deleted file mode 100644 index d184c757..00000000 --- a/modules/savanna/modules/get-started/pages/index.adoc +++ /dev/null @@ -1,25 +0,0 @@ -= Get Started with TigerGraph Savanna -:experimental: - -To get started with TigerGraph Savanna, users must first Sign Up and Log In. -These guides will walk you through the necessary steps. - -== xref:how2-signup.adoc[] - -Learn how to create a TigerGraph Savanna Cloud account and get access to the platform. - -== xref:how2-login.adoc[] - -Learn how to log in to your TigerGraph Savanna Cloud account. - -== Next Steps - -Once logged in, learn more about xref:savanna:workgroup-workspace:index.adoc[] or jump right into creating a xref:workgroup-workspace:workgroups/workgroup.adoc[Workgroup] and xref:workgroup-workspace:workspaces/workspace.adoc[Workspaces]. - -Return to the xref:savanna:overview:index.adoc[Overview] page for a different topic. - - - - - - diff --git a/modules/savanna/modules/graph-development/nav.adoc b/modules/savanna/modules/graph-development/nav.adoc index 75226e59..de45c5e6 100644 --- a/modules/savanna/modules/graph-development/nav.adoc +++ b/modules/savanna/modules/graph-development/nav.adoc @@ -1,18 +1,25 @@ -* xref:index.adoc[Graph Development] -** xref:load-data/index.adoc[Load Data] -*** xref:load-data/load-from-local.adoc[] +* Build +** xref:index.adoc[Overview] +** Load data +*** xref:load-data/index.adoc[Overview] +*** xref:load-data/load-from-local.adoc[Load from local file] *** xref:load-data/load-from-s3.adoc[Load from AWS S3] *** xref:load-data/load-from-gcs.adoc[Load from GCS] -*** xref:load-data/load-from-blob.adoc[Load from Blob] +*** xref:load-data/load-from-blob.adoc[Load from Azure Blob] *** xref:load-data/load-from-snowflake.adoc[Load from Snowflake] -*** xref:load-data/token-function.adoc[Token Function] -*** xref:load-data/load-from-other-sources.adoc[] -**** xref:load-data/jdbc.adoc[] -** xref:design-schema/index.adoc[Design Schema] -** xref:gsql-editor/index.adoc[GSQL Editor] -*** xref:gsql-editor/how2-edit-gsql-query.adoc[Edit Query] -** xref:explore-graph/index.adoc[Explore Graph] -*** xref:explore-graph/how2-use-pattern-search.adoc[Pattern Search] -** xref:advanced-features/index.adoc[Advanced Features] -*** xref:advanced-features/write2-s3.adoc[Export Data to S3] +*** xref:load-data/token-function.adoc[Token function] +*** Load from other sources +**** xref:load-data/load-from-other-sources.adoc[Overview] +**** xref:load-data/jdbc.adoc[JDBC Spark connection] +** xref:design-schema/index.adoc[Design schema] +** GSQL Editor +*** xref:gsql-editor/index.adoc[Overview] +*** xref:gsql-editor/how2-edit-gsql-query.adoc[Edit query] +** Explore graph +*** xref:explore-graph/index.adoc[Overview] +*** xref:explore-graph/how2-use-pattern-search.adoc[Pattern search] +** Advanced features +*** xref:advanced-features/index.adoc[Overview] +*** xref:advanced-features/write2-s3.adoc[Export data to S3] *** xref:advanced-features/configure-udf.adoc[Configure UDF] +** xref:savanna:build-ai:index.adoc[Build a graph with AI] diff --git a/modules/savanna/modules/graph-development/pages/advanced-features/index.adoc b/modules/savanna/modules/graph-development/pages/advanced-features/index.adoc index 4fda7395..dc4f3e2b 100644 --- a/modules/savanna/modules/graph-development/pages/advanced-features/index.adoc +++ b/modules/savanna/modules/graph-development/pages/advanced-features/index.adoc @@ -1,12 +1,23 @@ -= Advanced Features += Advanced features :experimental: -This section covers the powerful and sophisticated functionalities that allow you to leverage TigerGraph Savanna to its fullest potential. +Export graph data and extend GSQL with user defined functions. -== Write Output to S3 +== Tasks -TigerGraph Savanna enables you to write data directly to Amazon S3, providing a seamless way to export and store your graph data in a scalable and cost-effective manner. Click xref:advanced-features/write2-s3.adoc[Export Data to S3] to learn how to configure and use this feature. +[.start-cards,cols="2",grid=none,frame=none, separator=¦] +|=== +¦ +xref:advanced-features/write2-s3.adoc[Export data to S3] -== Configure User Defined Functions (UDF) +Write graph data directly to Amazon S3 for storage or downstream use. +¦ +xref:advanced-features/configure-udf.adoc[Configure a UDF] -User-Defined Functions (UDFs) are a powerful way to extend TigerGraph's capabilities by adding custom logic to your graph queries. This guide will walk you through the process of updating existing UDFs. Click xref:advanced-features/configure-udf.adoc[Configure UDF] to get started. +Add custom logic to graph queries with user defined functions. +|=== + +== Where to go next + +* xref:savanna:graph-development:index.adoc[Build] for the full set of schema, load, and query workflows. +* xref:savanna:workgroup-workspace:workspaces/connect-via-api.adoc[Connect via APIs] or xref:savanna:get-started:connect-agent-mcp.adoc[Connect AI tools with MCP] when you are ready to call the graph from code or an agent. diff --git a/modules/savanna/modules/graph-development/pages/advanced-features/write2-s3.adoc b/modules/savanna/modules/graph-development/pages/advanced-features/write2-s3.adoc index c75f1020..42819fa9 100644 --- a/modules/savanna/modules/graph-development/pages/advanced-features/write2-s3.adoc +++ b/modules/savanna/modules/graph-development/pages/advanced-features/write2-s3.adoc @@ -105,7 +105,6 @@ It is recommended to always set up a default s3 access key ID and secret access [NOTE] ==== Update Graph Admin configurations may require restart of certain services, which may impact the running queries, loading jobs, or schema changes. Apply changes with caution. - The Graph Admin method does not support setting the `s3_region` parameter. To specify a region other than the default `us-east-1`, use Method 1 (GSQL Editor) or Method 2 (API). ==== diff --git a/modules/savanna/modules/graph-development/pages/design-schema/index.adoc b/modules/savanna/modules/graph-development/pages/design-schema/index.adoc index 08157e21..55801f49 100644 --- a/modules/savanna/modules/graph-development/pages/design-schema/index.adoc +++ b/modules/savanna/modules/graph-development/pages/design-schema/index.adoc @@ -30,7 +30,6 @@ image::workspace-connect-menu-1.png[width=300] [TIP] ==== The comprehensive list of shortcuts can make your schema design process more efficient and productive. - image::Screenshot 2024-04-17 at 7.35.28 PM.png[] ==== @@ -117,8 +116,8 @@ You can click on the btn:[ Advanced Settings ] button on a vertex to configure t image::advanced-settings.png[] -1. Enable *As Attribute* for primary key. For details, please refer to xref:gsql-ref:ddl-and-loading:defining-a-graph-schema.adoc#_with_primary_id_as_attribute[WITH primary_id_as_attribute] documentation. -2. Enable index for non-primary key attributes. Indexes improve the speed of data retrieval operations by providing quick access paths to the data. For details, please refer to xref:gsql-ref:ddl-and-loading:defining-a-graph-schema.adoc#_alter_index[Alter Index] documentation. +1. Enable *As Attribute* for primary key. For details, please refer to https://www.tigergraph.com/docs/gsql-ref/4.3/ddl-and-loading/defining-a-graph-schema/#_with_primary_id_as_attribute[WITH primary_id_as_attribute^] documentation. +2. Enable index for non-primary key attributes. Indexes improve the speed of data retrieval operations by providing quick access paths to the data. For details, please refer to https://www.tigergraph.com/docs/gsql-ref/4.3/ddl-and-loading/defining-a-graph-schema/#_alter_index[Alter Index^] documentation. == 7) Advanced Settings For Edge @@ -129,8 +128,8 @@ You can click on the btn:[ Advanced Settings ] button on an edge to configure th image::advanced-settings-2.png[] 1. Specify other vertex pairs. You can define additional vertex pairs for an edge to establish more complex relationships between different types of vertices. -2. Specify edge discriminators. Discriminators allow you to distinguish between different types of edges or relationships, providing more granularity in your graph schema. For details, please refer to the xref:gsql-ref:ddl-and-loading:defining-a-graph-schema.adoc#_discriminator[DISCRIMINATOR] documentation. -3. For directed edges, you can specify a reverse edge to create a bidirectional relationship. This can be useful for queries that need to traverse edges in both directions. For details, please refer to xref:gsql-ref:ddl-and-loading:defining-a-graph-schema.adoc#_with_reverse_edge[WITH REVERSE_EDGE] documentation. +2. Specify edge discriminators. Discriminators allow you to distinguish between different types of edges or relationships, providing more granularity in your graph schema. For details, please refer to the https://www.tigergraph.com/docs/gsql-ref/4.3/ddl-and-loading/defining-a-graph-schema/#_discriminator[DISCRIMINATOR^] documentation. +3. For directed edges, you can specify a reverse edge to create a bidirectional relationship. This can be useful for queries that need to traverse edges in both directions. For details, please refer to https://www.tigergraph.com/docs/gsql-ref/4.3/ddl-and-loading/defining-a-graph-schema/#_with_reverse_edge[WITH REVERSE_EDGE^] documentation. == Next Steps diff --git a/modules/savanna/modules/graph-development/pages/explore-graph/index.adoc b/modules/savanna/modules/graph-development/pages/explore-graph/index.adoc index b67dd2cf..bb3a4dad 100644 --- a/modules/savanna/modules/graph-development/pages/explore-graph/index.adoc +++ b/modules/savanna/modules/graph-development/pages/explore-graph/index.adoc @@ -1,25 +1,33 @@ -= Explore Graph += Explore graph :experimental: - -Explore graph allow users to visually interact with their graph data. -Use it to help navigate and understand complex data structures by displaying connections and dependencies. +Visually interact with graph data to navigate connections and dependencies. [TIP] ==== -A visual representation of a graph and its data can help identify and explain the relationships between different data points or entities. +A visual representation of a graph and its data can help identify relationships between entities. ==== == Prerequisites -Before you can utilize the Explore Graph features you need to xref:savanna:workgroup-workspace:workgroups/how2-create-a-workgroup.adoc[Create a Workspace] and xref:savanna:graph-development:load-data/index.adoc[Load Data]. +* An active workspace. See xref:savanna:workgroup-workspace:workspaces/how2-create-a-workspace.adoc[Create a workspace]. +* Data loaded into the graph. See xref:savanna:graph-development:load-data/index.adoc[Load data]. + +== Tasks -== xref:savanna:graph-development:explore-graph/how2-use-pattern-search.adoc[] +[.start-cards,cols="2",grid=none,frame=none, separator=¦] +|=== +¦ +xref:savanna:graph-development:explore-graph/how2-use-pattern-search.adoc[Pattern search] -Learn how look for specific patterns or sequences within a dataset or system. +Search for specific patterns or sequences in your graph data. +¦ +xref:savanna:graph-development:index.adoc[Build hub] -== Next Steps +Return to the Build workflows for schema, load, GSQL, and more. +|=== -Next, check out the xref:savanna:integrations:index.adoc[]. +== Where to go next -Or return to the xref:savanna:overview:index.adoc[Overview] page for a different topic. +* xref:savanna:graph-development:gsql-editor/index.adoc[GSQL Editor] to write and run queries. +* xref:savanna:integrations:index.adoc[Marketplace] for Insights, GraphStudio, and other add-ons. diff --git a/modules/savanna/modules/graph-development/pages/gsql-editor/how2-edit-gsql-query.adoc b/modules/savanna/modules/graph-development/pages/gsql-editor/how2-edit-gsql-query.adoc index 8949d355..4e83615e 100644 --- a/modules/savanna/modules/graph-development/pages/gsql-editor/how2-edit-gsql-query.adoc +++ b/modules/savanna/modules/graph-development/pages/gsql-editor/how2-edit-gsql-query.adoc @@ -9,7 +9,7 @@ By executing queries in the GSQL Editor you can then visualize the results, maki [TIP] ==== GSQL is a powerful graph query language that enables you to express complex graph traversal and analysis operations. -For more information about GSQL please visit xref:gsql-ref:querying:index.adoc[] +For more information about GSQL please visit https://www.tigergraph.com/docs/gsql-ref/4.3/querying/[GSQL Query Language^]. ==== == Edit GSQL Query diff --git a/modules/savanna/modules/graph-development/pages/gsql-editor/index.adoc b/modules/savanna/modules/graph-development/pages/gsql-editor/index.adoc index 4105a802..04d8d474 100644 --- a/modules/savanna/modules/graph-development/pages/gsql-editor/index.adoc +++ b/modules/savanna/modules/graph-development/pages/gsql-editor/index.adoc @@ -22,9 +22,7 @@ For more details please see xref:savanna:graph-development:design-schema/index.a [TIP] ==== Additionally, you can use shortcuts to run a GSQL query. - image::gsql-editor-shorcuts.png[] - See xref:savanna:graph-development:gsql-editor/how2-edit-gsql-query.adoc[] for more details. ==== diff --git a/modules/savanna/modules/graph-development/pages/index.adoc b/modules/savanna/modules/graph-development/pages/index.adoc index 3386dea9..7fe7a9bb 100644 --- a/modules/savanna/modules/graph-development/pages/index.adoc +++ b/modules/savanna/modules/graph-development/pages/index.adoc @@ -1,6 +1,11 @@ -= Graph Development += Build +:experimental: -Welcome! This guide provides an overview of the essential tools and processes for managing and developing your graph databases. Here, you will find comprehensive guides and resources to help you design, load, query, and explore a graph database. Click on the sections below to learn more about each area. +Model, load, query, and explore graphs on Savanna. +New here? Start with xref:savanna:get-started:first-graph-ui.adoc[Build your graph in Savanna], or xref:savanna:get-started:connect-agent-mcp.adoc[Connect AI tools with MCP] once you have a graph. +Or use xref:savanna:build-ai:index.adoc[Build a graph with AI] as a console shortcut. + +This hub links the core Build workflows. Use xref:savanna:workgroup-workspace:workspaces/connect-via-api.adoc[Connect via APIs] or xref:savanna:get-started:connect-agent-mcp.adoc[Connect AI tools with MCP] when you are ready to call the same graph from code or an agent. == xref:load-data/index.adoc[Load Data] @@ -76,4 +81,4 @@ This section covers the powerful and sophisticated functionalities that allow yo == Next Steps -Learn how to manage your workgroups and workspaces in xref:savanna:workgroup-workspace:index.adoc[Workgroup and Workspace Management]. +Learn how to manage your workgroups and workspaces in xref:savanna:workgroup-workspace:index.adoc[Workgroups and workspaces]. diff --git a/modules/savanna/modules/graph-development/pages/load-data/index.adoc b/modules/savanna/modules/graph-development/pages/load-data/index.adoc index c28ca180..e5eadc5e 100644 --- a/modules/savanna/modules/graph-development/pages/load-data/index.adoc +++ b/modules/savanna/modules/graph-development/pages/load-data/index.adoc @@ -1,9 +1,9 @@ -= Load Data in TigerGraph Savanna += Load data :experimental: -Efficiently loading data into your TigerGraph databases is crucial for successful graph analysis. +Load data into a TigerGraph database from local files or connected sources. -== Load Data Overview +== Load data overview .TigerGraph Savanna offers multiple methods for loading data: . Select an active workspace from the dropdown menu. + @@ -35,7 +35,7 @@ So, you have more flexibility and control over the data loading process. You can leverage GSQL's powerful features to transform, validate, and load data from various sources into your graph database. ==== -=== Data Loading Tool Limitations +=== Data loading tool limitations When selecting a data source a step-by-step guide might not always be available. When this is the case users will see btn:[Open in GSQL Editor] on the bottom right of the panel. @@ -46,37 +46,44 @@ image::open-in-gsql-editor.png[width=200] ==== As of Oct. 31, 2024, the step-by-step guide supports loading from xref:savanna:graph-development:load-data/load-from-local.adoc[Local File], xref:savanna:graph-development:load-data/load-from-s3.adoc[Amazon S3], xref:savanna:graph-development:load-data/load-from-gcs.adoc[Google Cloud Storage] and xref:savanna:graph-development:load-data/load-from-blob.adoc[Azure Blob Storage]. We are actively working on adding support for more data sources. - ==== -== xref:savanna:graph-development:load-data/load-from-local.adoc[] - -Check out our step-by-step guide on loading data from a local file. - -== xref:savanna:graph-development:load-data/load-from-s3.adoc[] - -Check out our step-by-step guide on loading data from a Amazon S3. - -== xref:savanna:graph-development:load-data/load-from-gcs.adoc[] +== Data sources -Check out our step-by-step guide on loading data from a Google Cloud Storage. +[.start-cards,cols="2",grid=none,frame=none, separator=¦] +|=== +¦ +xref:savanna:graph-development:load-data/load-from-local.adoc[Local files] -== xref:savanna:graph-development:load-data/load-from-blob.adoc[] +Load data from a file on your machine. +¦ +xref:savanna:graph-development:load-data/load-from-s3.adoc[Amazon S3] -Check out our step-by-step guide on loading data from a Azure Blob Storage. +Load data from an Amazon S3 bucket. +¦ +xref:savanna:graph-development:load-data/load-from-gcs.adoc[Google Cloud Storage] -== xref:savanna:graph-development:load-data/load-from-snowflake.adoc[] +Load data from a Google Cloud Storage bucket. +¦ +xref:savanna:graph-development:load-data/load-from-blob.adoc[Azure Blob Storage] -Check out our step-by-step guide on loading data from Snowflake. +Load data from Azure Blob Storage. +¦ +xref:savanna:graph-development:load-data/load-from-snowflake.adoc[Snowflake] +Load data from Snowflake. +¦ +xref:savanna:graph-development:load-data/load-from-other-sources.adoc[Other sources] -== xref:savanna:graph-development:load-data/load-from-other-sources.adoc[] +Check loading status for additional sources, including JDBC. +|=== -Here you can check the status of loading data form other sources in TigerGraph Savanna. -Or check out our xref:savanna:graph-development:load-data/jdbc.adoc[]. +== Related -== Next Steps -Next, learn more about how to xref:savanna:graph-development:design-schema/index.adoc[]. +* xref:savanna:graph-development:load-data/jdbc.adoc[Load from JDBC] +* xref:savanna:graph-development:load-data/token-function.adoc[Token functions] -Or return to the xref:savanna:workgroup-workspace:index.adoc[] page or xref:savanna:overview:index.adoc[Overview] page for a different topic. +== Where to go next +* xref:savanna:graph-development:design-schema/index.adoc[Design a schema] if you still need to define vertices and edges. +* xref:savanna:graph-development:index.adoc[Build] for the full set of schema, load, and query workflows. diff --git a/modules/savanna/modules/graph-development/pages/load-data/jdbc.adoc b/modules/savanna/modules/graph-development/pages/load-data/jdbc.adoc index c18e1c84..61e56b21 100644 --- a/modules/savanna/modules/graph-development/pages/load-data/jdbc.adoc +++ b/modules/savanna/modules/graph-development/pages/load-data/jdbc.adoc @@ -64,10 +64,10 @@ $ keytool -import -alias -file ~/tgcloud == Create the secret key on your TigerGraph instance -Go to xref:gui:admin-portal:overview.adoc[Admin Portal], then on the sidebar, go to Management > Users. +Go to https://www.tigergraph.com/docs/gui/4.3/admin-portal/overview/[Admin Portal^], then on the sidebar, go to Management > Users. Choose the graph you want to access. -Create a secret key by following the instructions on the xref:gui:admin-portal:management/user-management.adoc#manage-secrets[Manage Secrets] page. +Create a secret key by following the instructions on the https://www.tigergraph.com/docs/gui/4.3/admin-portal/management/user-management/#manage-secrets[Manage Secrets^] page. Save the secret key separately on your server. This key will be your password to access the TigerGraph database. diff --git a/modules/savanna/modules/graph-development/pages/load-data/load-from-blob.adoc b/modules/savanna/modules/graph-development/pages/load-data/load-from-blob.adoc index 1dbdb97a..3145931a 100644 --- a/modules/savanna/modules/graph-development/pages/load-data/load-from-blob.adoc +++ b/modules/savanna/modules/graph-development/pages/load-data/load-from-blob.adoc @@ -35,7 +35,6 @@ image::config-file.png[] ==== If the parsing is *not* correct, click on the image:Screenshot 2024-04-17 at 5.54.17 PM.png[width=75] button to configure a different option for the delimiter, such as `eol`, or `quote and header`. - image:Screenshot 2024-04-17 at 5.54.50 PM.png[] ==== + diff --git a/modules/savanna/modules/graph-development/pages/load-data/load-from-gcs.adoc b/modules/savanna/modules/graph-development/pages/load-data/load-from-gcs.adoc index 4d2c2472..05cd4923 100644 --- a/modules/savanna/modules/graph-development/pages/load-data/load-from-gcs.adoc +++ b/modules/savanna/modules/graph-development/pages/load-data/load-from-gcs.adoc @@ -35,7 +35,6 @@ image::config-file.png[] ==== If the parsing is *not* correct, click on the image:Screenshot 2024-04-17 at 5.54.17 PM.png[width=75] button to configure a different option for the delimiter, such as `eol`, or `quote and header`. - image:Screenshot 2024-04-17 at 5.54.50 PM.png[] ==== + diff --git a/modules/savanna/modules/graph-development/pages/load-data/load-from-local.adoc b/modules/savanna/modules/graph-development/pages/load-data/load-from-local.adoc index c29c37f8..b899786c 100644 --- a/modules/savanna/modules/graph-development/pages/load-data/load-from-local.adoc +++ b/modules/savanna/modules/graph-development/pages/load-data/load-from-local.adoc @@ -31,7 +31,6 @@ image::config-file.png[] ==== If the parsing is *not* correct, click on the image:Screenshot 2024-04-17 at 5.54.17 PM.png[width=75] button to configure a different option for the delimiter, such as `eol`, or `quote and header`. - image:Screenshot 2024-04-17 at 5.54.50 PM.png[] ==== + diff --git a/modules/savanna/modules/graph-development/pages/load-data/load-from-other-sources.adoc b/modules/savanna/modules/graph-development/pages/load-data/load-from-other-sources.adoc index 4ea67ba4..aacaca06 100644 --- a/modules/savanna/modules/graph-development/pages/load-data/load-from-other-sources.adoc +++ b/modules/savanna/modules/graph-development/pages/load-data/load-from-other-sources.adoc @@ -2,7 +2,7 @@ TigerGraph Savanna supports various data sources for ingestion, providing flexibility in integrating with your existing data infrastructure. GSQL templates can be used for connectors that are not yet supported in the step-by-step loading guide. -See xref:tigergraph-server:data-loading:index.adoc[Data Loading in TigerGraph DB] for guides to loading data into TigerGraph. +See https://www.tigergraph.com/docs/tigergraph-server/4.3/data-loading/[Data Loading in TigerGraph DB^] for guides to loading data into TigerGraph. Additionally, data can also be loaded from a JDBC Connection as well, See xref:savanna:graph-development:load-data/jdbc.adoc[] for more details. diff --git a/modules/savanna/modules/graph-development/pages/load-data/load-from-s3.adoc b/modules/savanna/modules/graph-development/pages/load-data/load-from-s3.adoc index ef9e78ef..ca0ad8b7 100644 --- a/modules/savanna/modules/graph-development/pages/load-data/load-from-s3.adoc +++ b/modules/savanna/modules/graph-development/pages/load-data/load-from-s3.adoc @@ -37,7 +37,6 @@ image::config-file.png[] ==== If the parsing is *not* correct, click on the image:Screenshot 2024-04-17 at 5.54.17 PM.png[width=75] button to configure a different option for the delimiter, such as `eol`, or `quote and header`. - image:Screenshot 2024-04-17 at 5.54.50 PM.png[] ==== + diff --git a/modules/savanna/modules/graph-development/pages/load-data/token-function.adoc b/modules/savanna/modules/graph-development/pages/load-data/token-function.adoc index 77dc0e05..6d803f9f 100644 --- a/modules/savanna/modules/graph-development/pages/load-data/token-function.adoc +++ b/modules/savanna/modules/graph-development/pages/load-data/token-function.adoc @@ -1,7 +1,7 @@ = Token Function :experimental: -TigerGraph Savanna allows you to enhance your data loading process by adding token functions. Token functions enable you to manipulate and transform data during the loading process, making it easier to prepare your data for graph analysis. This guide will walk you through the steps to add token functions using the TigerGraph Savanna UI. For more details please refer to xref:4.1@gsql-ref:ddl-and-loading:functions/token/index.adoc[Token Functions]. +TigerGraph Savanna allows you to enhance your data loading process by adding token functions. Token functions enable you to manipulate and transform data during the loading process, making it easier to prepare your data for graph analysis. This guide will walk you through the steps to add token functions using the TigerGraph Savanna UI. For more details please refer to https://www.tigergraph.com/docs/gsql-ref/4.3/ddl-and-loading/functions/token/[Token Functions^]. == Add a token function . Click on the btn:[Token Function] button to configure token functions for your data source. @@ -14,7 +14,7 @@ image::config-mapping-2.png[width=400] image::token-function-1.png[] + -. Select the token function you want to use from the `Type` dropdown menu. This will automatically populate the output data type and the required parameters. You can also check the sample input and output by hovering over the btn:[?] icon. Please refer to the xref:4.1@gsql-ref:ddl-and-loading:functions/token/index.adoc[Token Functions] documentation for more details. +. Select the token function you want to use from the `Type` dropdown menu. This will automatically populate the output data type and the required parameters. You can also check the sample input and output by hovering over the btn:[?] icon. Please refer to the https://www.tigergraph.com/docs/gsql-ref/4.3/ddl-and-loading/functions/token/[Token Functions^] documentation for more details. + image::token-function-3.png[] diff --git a/modules/savanna/modules/integrations/nav.adoc b/modules/savanna/modules/integrations/nav.adoc index c549da25..6ab52223 100644 --- a/modules/savanna/modules/integrations/nav.adoc +++ b/modules/savanna/modules/integrations/nav.adoc @@ -1,8 +1,8 @@ -* xref:index.adoc[Marketplace] -** xref:solutions.adoc[] -** xref:add-ons.adoc[] -*** xref:graphstudio.adoc[] -*** xref:insights.adoc[] -*** xref:savanna:integrations:graphql.adoc[] - - +* Marketplace +** xref:index.adoc[Overview] +** xref:solutions.adoc[Solutions] +** Add-ons +*** xref:add-ons.adoc[Overview] +*** xref:graphstudio.adoc[GraphStudio] +*** xref:insights.adoc[Insights] +*** xref:savanna:integrations:graphql.adoc[GraphQL] diff --git a/modules/savanna/modules/integrations/pages/graphql.adoc b/modules/savanna/modules/integrations/pages/graphql.adoc index 6da45985..2269d02d 100644 --- a/modules/savanna/modules/integrations/pages/graphql.adoc +++ b/modules/savanna/modules/integrations/pages/graphql.adoc @@ -7,7 +7,7 @@ With TigerGraph GraphQL, you can use any GraphQL client or simply submit GraphQL [TIP] ==== -To learn more about GraphQL read our xref:graphql:ROOT:index.adoc[]. +To learn more about GraphQL read our https://www.tigergraph.com/docs/graphql/current/[TigerGraph GraphQL Service^]. ==== == Get Started GraphQL Add-on diff --git a/modules/savanna/modules/integrations/pages/graphstudio.adoc b/modules/savanna/modules/integrations/pages/graphstudio.adoc index 3e75ba22..cf1387cb 100644 --- a/modules/savanna/modules/integrations/pages/graphstudio.adoc +++ b/modules/savanna/modules/integrations/pages/graphstudio.adoc @@ -8,7 +8,7 @@ The platform supports a wide range of data types and allows users to import data [TIP] ==== -To learn more about xref:gui:graphstudio:overview.adoc[GraphStudio] +To learn more about https://www.tigergraph.com/docs/gui/4.3/graphstudio/overview/[GraphStudio^] ==== == Get Started GraphStudio Add-on diff --git a/modules/savanna/modules/integrations/pages/index.adoc b/modules/savanna/modules/integrations/pages/index.adoc index 4d64fbea..d782dfa0 100644 --- a/modules/savanna/modules/integrations/pages/index.adoc +++ b/modules/savanna/modules/integrations/pages/index.adoc @@ -1,23 +1,29 @@ -= Marketplace Overview += Marketplace :experimental: -TigerGraph Savanna seamlessly integrates with various tools and services to enhance your graph database workflow. +Extend Savanna with add-ons, or start from a prebuilt solution for a common use case. -== xref:savanna:integrations:add-ons.adoc[] +== Options -Learn how to extend the capabilities of TigerGraph Savanna with add-ons tailored to your needs. +[.start-cards,cols="2",grid=none,frame=none, separator=¦] +|=== +¦ +xref:savanna:integrations:add-ons.adoc[Add-ons] -* xref:savanna:integrations:insights.adoc[] -* xref:savanna:integrations:graphstudio.adoc[] -* xref:savanna:integrations:graphql.adoc[] +Install Insights, GraphStudio, GraphQL, and other tools on top of a workspace. +¦ +xref:savanna:integrations:solutions.adoc[Solutions] -== xref:savanna:integrations:solutions.adoc[] +Deploy a prebuilt graph for a common industry or use case. +|=== -Here you can learn about our array of industry standard prebuilt solutions for diverse industries and use cases. -Designed for users to swiftly adopt graph technology. +== Add-ons -== Next Steps +* xref:savanna:integrations:insights.adoc[Insights] +* xref:savanna:integrations:graphstudio.adoc[GraphStudio] +* xref:savanna:integrations:graphql.adoc[GraphQL] -Now learn about xref:administration:index.adoc[Administration] features or xref:savanna:administration:security/index.adoc[] in TigerGraph Savanna. +== Where to go next -Or return to the xref:savanna:overview:index.adoc[Overview] page for a different topic. +* xref:savanna:administration:index.adoc[Administration] covers users, access, and organization settings. +* xref:savanna:administration:security/index.adoc[Security] covers password policy and identity providers. diff --git a/modules/savanna/modules/integrations/pages/insights.adoc b/modules/savanna/modules/integrations/pages/insights.adoc index e3cdded7..0cd396f2 100644 --- a/modules/savanna/modules/integrations/pages/insights.adoc +++ b/modules/savanna/modules/integrations/pages/insights.adoc @@ -7,7 +7,7 @@ Non-technical users can easily and quickly obtain meaningful visual insights tha [TIP] ==== -To learn more about Insights read our xref:insights:intro:index.adoc[Insights Documentation] +To learn more about Insights read our https://www.tigergraph.com/docs/insights/4.3/intro/[Insights Documentation^] ==== == Get Started with the Insights Add-on diff --git a/modules/savanna/modules/overview/nav.adoc b/modules/savanna/modules/overview/nav.adoc index c5e3b950..f6e1898f 100644 --- a/modules/savanna/modules/overview/nav.adoc +++ b/modules/savanna/modules/overview/nav.adoc @@ -1,8 +1,2 @@ * xref:index.adoc[Introduction] -** xref:savanna:overview:overview.adoc[Overview] -// ** xref:savanna:overview:architecture.adoc[Architecture] -** xref:savanna:overview:comparison_table.adoc[Compare Different Offerings] -** xref:savanna:overview:release-notes.adoc[Release Notes] -** xref:savanna:overview:pricing.adoc[] -** xref:savanna:overview:cost-estimation.adoc[] - +* xref:changelog.adoc[Changelog] diff --git a/modules/savanna/modules/overview/pages/architecture.adoc b/modules/savanna/modules/overview/pages/architecture.adoc index 97e4de34..bd299513 100644 --- a/modules/savanna/modules/overview/pages/architecture.adoc +++ b/modules/savanna/modules/overview/pages/architecture.adoc @@ -1,7 +1,5 @@ = TigerGraph Savanna Architecture :experimental: -:toc: -:toclevels:2 Welcome to the TigerGraph Savanna Architecture documentation. This guide provides an in-depth look at the architecture of TigerGraph Savanna, detailing its components, design principles, and how it ensures performance, scalability, and reliability for your graph database applications. @@ -30,7 +28,7 @@ TigerGraph Solution Kits are comprehensive, ready-to-use solutions that package They provide everything users need to get started with graph analytics and AI-driven insights in their respective fields. === GSQL Editor -The platform features a dedicated GSQL Editor—an integrated development environment (IDE) tailored for working with GSQL, the query language of TigerGraph. +The platform features a dedicated GSQL Editor, an integrated development environment (IDE) tailored for working with GSQL, the query language of TigerGraph. Designed with user convenience in mind, the GSQL Editor offers a user-friendly interface that simplifies the process of writing, testing, and optimizing GSQL queries. With syntax highlighting, code completion, query execution, and debugging capabilities, users can easily develop and fine tune their graph queries. Additionally, the GSQL Editor enables seamless collaboration within organizations by allowing users to share GSQL files, fostering teamwork and facilitating efficient collaboration among colleagues. @@ -47,6 +45,6 @@ It helps users discover valuable information within their data even if they are == Next Steps -Next, to understand how TigerGraph Savanna differs from other TigerGraph offerings, see xref:overview:comparison_table.adoc[] or see xref:savanna:get-started:index.adoc[] to unlock its full potential. +Next, compare xref:overview:comparison_table.adoc[TigerGraph offerings] or xref:savanna:get-started:first-graph-ui.adoc[Build your graph in Savanna]. Return to xref:savanna:overview:index.adoc[TigerGraph Savanna] for another topic. diff --git a/modules/savanna/modules/overview/pages/changelog.adoc b/modules/savanna/modules/overview/pages/changelog.adoc new file mode 100644 index 00000000..93a88aa5 --- /dev/null +++ b/modules/savanna/modules/overview/pages/changelog.adoc @@ -0,0 +1,504 @@ += Changelog +:experimental: +:page-role: changelog +:page-toclevels: 1 +:page-aliases: release-notes.adoc + +Savanna changelog and product updates. +Stay up to date with new features, improvements, and bug fixes. + +== Aug 5, 2026 + +=== Enhanced workspace management + +Workspace Card and Table views now surface graph functions, database information, and common workspace actions more directly. +You spend less time drilling into menus when you need to load data, open the GSQL Editor, or adjust settings. +The views are meant for day-to-day operations, not just scanning what you have running. + +=== Longer billing grace periods + +Savanna now allows more time before a workspace is suspended or terminated when billing issues come up. +That extra runway helps you fix an expired card, reprocess an invoice, or sort out a payment method without losing access mid-investigation. +Fewer surprises when a billing hiccup overlaps with active work. + +=== GSQL Editor improvements + +The GSQL Editor received usability and reliability fixes for a smoother editing experience. +Edits, saves, and query runs should feel more predictable during longer development sessions. +These are incremental quality improvements rather than a full redesign. + +=== In-app chatbot retired + +The in-app chatbot has been retired as Savanna shifts toward broader developer resources and documentation. +Support and docs remain available through the usual channels, and more self-service guidance is planned for future releases. +Use xref:savanna:resources:support.adoc[Support] or the in-platform ticket flow when you need help. + +== Jul 1, 2026 + +=== Flexible maintenance scheduling + +Maintenance windows can now repeat on a custom weekly cadence instead of a fixed schedule. +Set an interval such as every 2 or 4 weeks and Savanna runs recurring maintenance only in that slot, so upgrades land when they least disrupt your workloads. +This helps when you batch operational changes around a sprint or a monthly release calendar. + +=== Automatic maintenance for new workspaces + +New workspaces are now created with automatic maintenance upgrades turned on, and the workspace clearly shows that the setting is active. +Leaving it on means version and security updates are applied for you during the maintenance window. +You can change or disable the setting at any time after the workspace is created if you prefer to control upgrades yourself. + +=== Upgrade notifications + +Savanna now notifies you before a workspace is upgraded during an automatic maintenance window. +The advance notice gives you time to review the change, reschedule if needed, or prepare dependent systems. +You no longer have to watch the console to learn that an upgrade is coming. + +== Jun 3, 2026 + +=== Enhanced workspace views + +You can now switch between Card, Table, and Graph views when managing workspaces. +Card view is best for a quick visual scan, Table view lets you compare many workspaces by their attributes, and Graph view shows how workspaces relate within a workgroup. +Pick the layout that fits the task instead of being locked into a single list. + +=== Workspace filtering + +A filter lets you narrow the workspace list down to what you are looking for instead of scrolling through everything. +This is especially useful in large organizations that run many workspaces across teams and environments. + +=== Savanna health metrics via API + +Health and infrastructure metrics are now exposed through APIs, so you can pull them into your own monitoring stack and dashboards. +The feed includes CPU, disk, IOPS, and service-level utilization, the same operational signals Savanna uses internally. +Use it to set alerts, track trends, and correlate database health with the rest of your platform. + +== May 6, 2026 + +=== Reprocess unpaid invoices + +You can now retry an unpaid invoice directly in Savanna instead of contacting support. +If a payment failed because of an expired card or a temporary issue, update the payment method and reprocess the invoice in place. +This shortens the time it takes to clear a billing block and restore normal access. + +=== Create support tickets in Savanna + +Support tickets can now be created and submitted from inside Savanna, with your account context already attached. +You stay in one place instead of switching to a separate portal or email thread, which gets your request to the right team faster. + +== Apr 15, 2026 + +=== Start with a sample graph + +When you create a workspace you can now start from a pre-loaded sample graph that already includes data and example queries, or start from an empty workspace when you are ready for a real project. +The sample path lets you explore schema, loading, and querying without setting anything up first. +It is the fastest way to see how Savanna works from end to end. + +=== Schedule version upgrades + +You can choose the exact date and time for a maintenance version upgrade, or apply it immediately when you want the change right away. +Scheduling lets you line an upgrade up with a low-traffic window and coordinate it with your team. +Nothing forces you to upgrade on Savanna's timing. + +=== New database version notifications + +Savanna now tells you when a new database version is available and lets you upgrade now or defer to a future maintenance window. +You stay aware of what is current without being pushed into an unplanned change. + +=== Deeper license metrics + +License reporting now shows more detail about how your entitlement is used across usage, allocation, and capacity. +With clearer numbers you can see how close you are to your limits and plan capacity before it becomes a problem. + +== Mar 11, 2026 + +=== Free credit expiration date + +Savanna now shows when your free credits expire, so you know exactly how much runway you have. +The clearer timeline helps you plan evaluation work and avoid losing credits you meant to use. + +=== Product tour + +A guided product tour walks new users through the platform and points out the features they will use most. +It shortens the time from first login to a working graph, especially for people who are new to Savanna. + +=== Copy queries from the GSQL Editor + +A copy action in the GSQL Editor lets you grab a query in one click instead of selecting text by hand. +Reusing a query in another workspace, sharing it with a teammate, or pasting it into a ticket is now quicker and less error prone. + +=== Snowflake key-pair authentication + +Savanna now connects to Snowflake using key-pair authentication in addition to passwords. +This aligns with Snowflake's move away from password-based sign-in and gives your integration a more secure credential that is easier to rotate. + +=== GraphStudio GSQL editor in Savanna + +The GSQL query editor from GraphStudio is now supported inside Savanna. +If your team already writes queries in GraphStudio, you get a familiar editing experience without leaving Savanna. + +== Feb 12, 2026 + +=== Billing enforcement for exhausted credits + +Organizations that run out of credits and have no valid payment method now have their workspaces paused and scheduled for resource termination, with email warnings sent well before anything is removed. +The advance notices give you time to add a payment method or export data before termination. +This keeps billing predictable while protecting you from surprise data loss. + +=== Bug fixes + +This release includes fixes across query and developer experience, UI and usability, and overall platform stability. + +== Dec 10, 2025 + +=== Clearer workspace deletion + +The workspace deletion flow now spells out what will happen before you confirm, so it is harder to remove the wrong workspace by mistake. +The clearer prompts reduce the risk of an accidental, irreversible delete. + +=== Data loading progress visibility + +Loading jobs now show progress more clearly while they run, so you can tell whether a job is moving, stalled, or nearly done without guessing. + +== Sep 23, 2025 + +=== Bug fixes + +Raised the WorkspaceSchedule timeout from 59 seconds to a full minute to avoid premature timeouts, and corrected the redirect URL used for marketplace access. + +== Sep 19, 2025 + +=== Guided onboarding flow + +A guided flow now walks first-time users through mapping their data and setting up a loading job automatically. +It removes much of the manual setup that used to stand between sign-up and a working graph. + +=== AWS Marketplace support + +You can now purchase and manage Savanna through AWS Marketplace, with billing and provisioning handled through your AWS account. +This consolidates the deployment under existing AWS agreements and simplifies procurement. + +=== Registration notifications + +New notifications guide you through registration tasks so account setup is smoother and you are less likely to miss a required step. + +== Aug 28, 2025 + +=== Clearer Read-Write deletion messaging + +Deleting a Read-Write workspace now comes with clearer messaging about the consequences, so the impact of the action is easier to understand before you confirm. + +=== Downtime and restore notifications + +A banner now warns you about upcoming downtime, and you get a notification when a backup restore finishes. +You spend less time watching the console to learn the current state. + +=== Onboarding credit expiration + +Onboarding credits now display their expiration date, so you can see how long they last and plan your evaluation accordingly. + +=== Multi-node CPU and memory monitoring + +CPU and memory monitoring now covers multi-node deployments and includes alerting. +You get visibility and warnings for clustered workspaces, not just single-node ones. + +=== Mobile optimizations + +Several Savanna screens are now optimized for small screens, so common tasks are usable on a phone or tablet. + +=== Bug fixes + +Assorted platform fixes and stability improvements. + +== Aug 14, 2025 + +=== Bug fixes + +Assorted platform fixes and stability improvements. + +== Jul 24, 2025 + +=== My Files grouping + +User-created files and folders are now grouped under *My Files*, which cuts sidebar clutter and makes your own work easier to find. + +=== Connect via API in the GSQL Editor + +The *Connect via API* option moved from the Workspace Connect menu into the GSQL Editor, so connection details sit next to where you write and run queries. + +=== Explore from the GSQL Editor + +Hovering a vertex in the GSQL Editor now shows an *Explore* button that takes you straight to Explore Graph. +You can move from a query result to a visual investigation without hunting for the entry point. + +=== Clearer GraphStudio restart messaging + +When you open GraphStudio while a workspace is restarting, the messaging now explains what is happening, so you are not left wondering why it is unavailable. + +=== Bug fixes + +Assorted platform fixes. + +== Jun 25, 2025 + +=== Faster Read-Only workspace refresh + +Savanna now runs read-only refresh tasks in parallel, and snapshots more accurately capture the data state at the moment the refresh starts. +The result is faster refreshes and more trustworthy read-only data. + +== Jun 11, 2025 + +=== Configurable auto-upgrade maintenance window + +You can set a preferred weekly maintenance window, and automatic version upgrades run only in that slot. +This gives you control over when upgrades happen, so they land during low-traffic hours. + +== May 20, 2025 + +=== Pre-provisioned workspace for new users + +New users now get a ready-to-use workspace loaded with sample graph data at sign-up. +You can start exploring right away instead of provisioning and loading data first. + +== Apr 29, 2025 + +=== Encrypted log management and search + +You can collect, store, and search application logs with Bring Your Own Key encryption, so log data stays under keys you control. +The added visibility helps with troubleshooting and operational auditing without giving up control of sensitive data. + +== Apr 3, 2025 + +=== Snowflake integration + +You can connect securely to Snowflake from Savanna, preview sample data, and auto-generate graph schemas and mappings from your tables. +From there you can customize transformations and manage loading jobs without leaving Savanna, which shortens the path from warehouse data to a working graph. + +=== TigerGraph 4.2 Preview + +TigerGraph Database 4.2 is available as a preview in Savanna, so you can try the newest database features ahead of general availability. +Use it to evaluate upcoming capabilities against your own workloads before they ship broadly. + +=== AI help chatbot + +An AI-powered help chatbot assists with onboarding, troubleshooting, and support questions right inside Savanna. +It gives you quick answers without waiting for a support handoff. + +== Jan 20, 2025 + +=== Edit data in Explore Graph + +You can now edit graph data directly on the Explore Graph page, so small corrections and updates no longer require a separate query or loading job. + +=== Bug fixes + +Assorted platform fixes. + +== Jan 16, 2025 + +=== Bring Your Own Cloud + +Bring Your Own Cloud (BYOC) is available for enterprise users, letting you deploy Savanna on your own cloud infrastructure. +You keep the managed experience while meeting data residency, security, and cost requirements on infrastructure you control. + +=== Bug fixes + +Assorted platform fixes. + +== Dec 19, 2024 + +=== Data Profile + +Data Profile is now available in the workspace and summarizes your graph's data distribution, schema, and statistics in one place. +It gives you a quick health check of what is actually loaded before you build queries on top of it. + +=== API documentation + +Reference documentation for the Savanna APIs is now available, with the detail you need to automate and integrate against the platform. + +=== Delinquent workspace email notices + +You now get advance email notice before delinquent workspaces are cleaned up, so you have time to act before resources are removed. + +=== Critical memory usage indicators + +Visual indicators make critical memory usage easy to spot at a glance, so you can react before a workspace runs into trouble. + +=== Bug fixes + +Assorted platform fixes. + +== Nov 28, 2024 + +=== Auto stop on Free tier + +Auto stop is now enabled and locked on for Free tier workspaces, which keeps idle free workspaces from consuming resources unnecessarily. + +=== Cypher auto-completion in the GSQL Editor + +The GSQL Editor now offers auto-completion for Cypher, helping you write queries faster and with fewer syntax errors. + +=== GSQL Editor tutorials + +Built-in tutorials in the GSQL Editor provide ready samples for schema changes, data loading, and queries, which lowers the learning curve for new users. + +=== Better automatic mapping + +Automatic data mapping is smoother and the graph widget performs better, so setting up a loading job takes less effort. + +=== Bug fixes + +Assorted platform fixes. + +== Nov 13, 2024 + +=== Clearer Graph Admin configs + +Graph Admin configuration screens are reworked to be more straightforward, making common administrative changes easier to find and apply. + +=== Separate backup quota checks + +Manual and automatic backup limits are now checked separately, and failed backups no longer count against your backup quota. +You get more predictable backup behavior and fewer false limits. + +=== JSON results in the GSQL Editor + +Query results can now render as JSON in the GSQL Editor, which is handy when you want to inspect nested output or copy it into another tool. + +=== Load a folder of data sources + +You can load every file in a folder at once instead of naming each file individually, which speeds up bulk loading jobs. + +=== Bug fixes + +Assorted platform fixes. + +== Oct 31, 2024 + +=== Alert email recipients + +You can add recipients for xref:savanna:workgroup-workspace:workspaces/settings.adoc#_alerts_[alert] emails, so the right people are notified when something needs attention. + +=== Unsaved file warnings in the GSQL Editor + +The editor now prompts you to save when you leave with unsaved files or schema changes, which helps you avoid losing work. + +=== Bug fixes + +Assorted platform fixes. + +== Oct 15, 2024 + +=== Scheduled expand and shrink + +You can xref:savanna:workgroup-workspace:workspaces/schedule.adoc[schedule workspace expansion and shrink] to match your usage patterns, so capacity grows for peak periods and shrinks when demand drops. +This keeps performance high while controlling cost. + +=== Cross-zone high availability + +Cross-zone HA lets you deploy clusters across multiple availability zones for stronger fault tolerance. +If a zone fails, your workspace stays available, which supports business continuity and disaster recovery. + +=== Alerting system + +The xref:savanna:workgroup-workspace:workspaces/settings.adoc#_alerts_[alerting] system notifies you about critical events and performance anomalies, so you can act before they affect users. + +=== Stability improvements + +Improved stability and performance across the platform, plus assorted bug fixes. + +== Sep 28, 2024 + +=== TigerGraph Server 4.1 Preview + +link:https://docs.tigergraph.com/tigergraph-server/current/release-notes/[TigerGraph Server 4.1 Preview^] is available on TigerGraph Savanna, giving you early access to the newest server capabilities. + +=== Output to Amazon S3 + +You can now write query output to Amazon S3 and read it back, storing and retrieving data in your own S3 buckets directly from Savanna. +This makes it easier to move results into the rest of your data pipeline. + +=== Built-in read-only algorithms + +You can run built-in read-only algorithms on read-only workspaces, so you get analytical results without needing write access. + +=== GSQL Editor refresh + +The GSQL Editor has a cleaner interface with syntax highlighting and auto-completion, making queries easier to read and faster to write. + +=== Faster data loading + +xref:savanna:graph-development:load-data/index.adoc[Data loading] is faster and more reliable, so large loads finish sooner with fewer retries. + +=== Customizable UDFs + +You can customize user-defined functions to extend a workspace with your own logic and algorithms for advanced analytics. + +=== Network configuration + +You can set up IP allow lists with xref:savanna:workgroup-workspace:workgroups/how2-config-network-access.adoc[network configuration] to control who can reach your workspaces, tightening access at the network level. + +=== Controller APIs + +xref:savanna:rest-api:index.adoc[Controller APIs] now support API keys, so you can automate Savanna operations more securely. + +=== Bug fixes + +Assorted platform fixes. + +== Sep 12, 2024 + +=== Capacity planning + +xref:savanna:workgroup-workspace:workspaces/settings.adoc#_workspace_size_suggestion[Capacity planning] helps you estimate the right workspace size and its cost before you provision, so you can balance performance against spend. + +=== Bug fixes + +Assorted platform fixes. + +== Aug 27, 2024 + +=== Smarter Auto Suspend + +xref:savanna:workgroup-workspace:workspaces/settings.adoc#_auto_suspend[Auto Suspend] now recognizes installing queries, running queries, loading jobs, and schema changes as activity, so it will not suspend a workspace that is still doing work. + +=== Bug fixes + +Assorted platform fixes. + +== Aug 14, 2024 + +=== Expanded solution kits + +The xref:savanna:integrations:solutions.adoc[solution kit] library is larger, with more pre-built templates and workflows for common graph use cases. +Starting from a kit gets you to a working solution faster than building from scratch. + +== Jul 31, 2024 + +=== GSQL API v2 + +GSQL API v2 improves query performance and unlocks the latest GSQL features, giving your applications access to newer capabilities and optimizations. + +=== Deeper monitoring + +Enhanced xref:savanna:workgroup-workspace:workgroups/monitor-workspaces.adoc[monitoring] tools give you deeper insight into your environment, so you can track performance metrics and diagnose issues more effectively. + +=== Bug fixes + +Assorted platform fixes. + +== Jul 13, 2024 + +=== Sync read-only data with read-write + +You can xref:savanna:workgroup-workspace:workspaces/readwrite-readonly.adoc#_update_read_onlyro_workspace[synchronize read-only data with read-write workspaces], keeping the two workspace types consistent so read-only analysis reflects the latest data. + +=== Bug fixes + +Assorted platform fixes. + +== Apr 29, 2024 + +=== TigerGraph Savanna Beta + +TigerGraph Savanna launched in Beta with its core platform, including separation of storage and compute, workgroups and workspaces for resource control, schema design, data loading, the GSQL Editor, Explore Graph, integrations and add-ons, administration tools, and usage-based billing. +Together these gave the first end-to-end way to build and run graph applications on Savanna. diff --git a/modules/savanna/modules/overview/pages/comparison_table.adoc b/modules/savanna/modules/overview/pages/comparison_table.adoc index 3b39aacf..312bbdd6 100644 --- a/modules/savanna/modules/overview/pages/comparison_table.adoc +++ b/modules/savanna/modules/overview/pages/comparison_table.adoc @@ -52,6 +52,6 @@ Here are some differences between the different TigerGraph offerings. == Next Steps -Next, see xref:savanna:get-started:index.adoc[] to unlock its full potential. +Next, xref:savanna:get-started:first-graph-ui.adoc[Build your graph in Savanna]. Return to xref:savanna:overview:index.adoc[TigerGraph Savanna] for another topic. diff --git a/modules/savanna/modules/overview/pages/cost-estimation.adoc b/modules/savanna/modules/overview/pages/cost-estimation.adoc index 78f3d266..1c69f260 100644 --- a/modules/savanna/modules/overview/pages/cost-estimation.adoc +++ b/modules/savanna/modules/overview/pages/cost-estimation.adoc @@ -10,6 +10,6 @@ https://tgcloud.io/price.html[TigerGraph Savanna Cost Estimation^] == Next Steps -Next, see xref:savanna:get-started:index.adoc[] to unlock its full potential. +Next, xref:savanna:get-started:first-graph-ui.adoc[Build your graph in Savanna]. Return to xref:savanna:overview:index.adoc[TigerGraph Savanna] for another topic. diff --git a/modules/savanna/modules/overview/pages/index.adoc b/modules/savanna/modules/overview/pages/index.adoc index 55578480..5d744a6a 100644 --- a/modules/savanna/modules/overview/pages/index.adoc +++ b/modules/savanna/modules/overview/pages/index.adoc @@ -2,125 +2,43 @@ :experimental: :page-aliases: cloud-overview.adoc -This documentation will guide you through the various features and functionalities of our brand new cloud-native Graph-as-a-Service (GaaS) management platform. +https://tgcloud.io[TigerGraph Savanna^] is TigerGraph's fully managed cloud service, and the successor to xref:cloud:start:overview.adoc[TigerGraph Cloud Classic]. +Savanna runs the infrastructure, so there is nothing to install or maintain: sign in, get a graph database on the latest 4.x engine, then design a schema, load data, write GSQL, and explore results from the browser or over the API. -TigerGraph Savanna (https://tgcloud.io) offers a powerful and user-friendly environment for managing, analyzing, and exploring your graph data. -It revolutionizes graph analytics by introducing a groundbreaking separation of compute and storage in its cloud-based graph database platform. +What sets Savanna apart from Enterprise Server and Cloud Classic is the architecture. +Storage and compute are separate, so each scales on its own and you pay for the capacity a workload actually needs. +See xref:savanna:overview:comparison_table.adoc[how the offerings compare]. -//pass:[ToolTip Practice] +Every path below gets you to a graph you can query. +Choose how you want to work. Build and manage your graph in Savanna, or connect AI tools with MCP and work with it using natural language. -//:tooltip: pass:[Hover over this text] +== Get started -//{tooltip} - -== Get to Know TigerGraph Savanna - -[.home-card,cols="2",grid=none,frame=none, separator=¦] +[.start-cards,cols="2",grid=none,frame=none, separator=¦] |=== ¦ -image:getstarted-homecard.png[alt=getstarted,width=74,height=74] -*Get Started* - -xref:savanna:get-started:index.adoc[Get Started] using TigerGraph Savanna or explore key features in our xref:overview:overview.adoc[]. - -xref:get-started:how2-signup.adoc[How to Sign Up] | -xref:savanna:get-started:how2-login.adoc[] -¦ -image:insights.png[alt=workspace,width=74,height=74] -*Workgroups and Workspaces* - -Learn how to dynamically allocate compute and storage resources. - -xref:workgroup-workspace:index.adoc[Overview] | -xref:workgroup-workspace:workgroups/workgroup.adoc[Workgroup] | -xref:workgroup-workspace:workspaces/workspace.adoc[Workspace] - -¦ -image:DataLoading-Homecard.png[alt=load data,width=74,height=74] -*Load Data* - -Learn how to Load Data into TigerGraph Savanna. - - - -xref:savanna:graph-development:load-data/index.adoc[Overview] | -xref:savanna:graph-development:load-data/load-from-local.adoc[Local] | -xref:savanna:graph-development:load-data/load-from-s3.adoc[Amazon S3] | -xref:savanna:graph-development:load-data/load-from-gcs.adoc[Google Cloud Storage] | -xref:savanna:graph-development:load-data/load-from-blob.adoc[Azure Blob Storage] | -xref:savanna:graph-development:load-data/load-from-other-sources.adoc[Other Sources] -¦ -image:TG_Icon_Library-135.png[alt=schemadesigner,width=74,height=74] -*Design Schema* - -xref:savanna:graph-development:design-schema/index.adoc[Design Schema] teaches you how you can easily modify and manage the schema of your graph databases using Schema Designer UI. - -¦ -image:schema-homecard.png[alt=gsqlEditor,width=74,height=74] -*GSQL Editor* - -The GSQL Editor is a powerful tool for developing and executing GSQL queries, allowing you to unlock insights from your graph databases. - -xref:savanna:graph-development:gsql-editor/index.adoc[Overview] | xref:savanna:graph-development:gsql-editor/how2-edit-gsql-query.adoc[] -¦ -image:TG_Icon_Library-218.png[alt=exploreGraph,width=74,height=74] -*Explore Graph* - -Visualize your data and navigate to understand complex connections and dependencies. - -xref:savanna:graph-development:explore-graph/index.adoc[Overview] | -xref:savanna:graph-development:explore-graph/how2-use-pattern-search.adoc[] +xref:savanna:get-started:first-graph-ui.adoc[Build your graph in Savanna] +Create and manage graphs, define and edit schemas, load data, and run GSQL queries directly in Savanna. ¦ -image:ArchtectureOverview-homecard.png[alt=integration,width=74,height=74] -*Marketplace* - -TigerGraph Savanna offers several powerful integration tools. - -xref:savanna:integrations:index.adoc[Overview] | -xref:savanna:integrations:insights.adoc[] | -xref:savanna:integrations:graphstudio.adoc[] | -xref:savanna:integrations:graphql.adoc[] -¦ -image:edtions-homecard.png[alt=billing,width=74,height=74] -*Administration* - -Here you can learn about the tools available for organizational administrators. +xref:savanna:get-started:connect-agent-mcp.adoc[Connect AI tools with MCP] -xref:savanna:administration:index.adoc[Overview] | -xref:savanna:administration:how2-invite-users.adoc[] | -xref:savanna:administration:how2-access-mgnt.adoc[] | -xref:savanna:administration:settings/how2-use-organization-mgnt.adoc[Org Management] -¦ -image:security-homecard.png[alt=security,width=74,height=74] -*Security* - -Learn about xref:savanna:administration:security/index.adoc[] in TigerGraph Savanna. - -xref:savanna:administration:security/password-policy.adoc[] | -xref:savanna:administration:security/idp.adoc[] -¦ -image:billing-homecard.png[alt=billing,width=74,height=74] -*Billing* - -The xref:savanna:administration:billing/index.adoc[Billing] window allows users to pay only for their specific usage of storage, data access, and compute resources. +Use natural language in Cursor, VS Code, Claude Code, or Claude Desktop to create and manage graphs, edit schemas, load data, and run GSQL queries in Savanna. +|=== -xref:savanna:administration:billing/payment-methods.adoc[] | -xref:savanna:administration:billing/invoices.adoc[] | -xref:savanna:overview:pricing.adoc[] -¦ -image:referece-homecard.png[alt=support,width=74,height=74] -*Release Notes* +== Common tasks -View the xref:savanna:overview:release-notes.adoc[Release Notes] to get update information on features and releases. -¦ -image:documentation-homecard.png[alt=support,width=74,height=74] -*Resources* +Start with the core graph workflow. Model your domain, load data, query it, and then connect applications or automation. -View any additional xref:resources:index.adoc[Resources] for TigerGraph Savanna. +* xref:savanna:graph-development:design-schema/index.adoc[Design a schema] to define the vertices, edges, and attributes that represent your data. +* xref:savanna:graph-development:load-data/index.adoc[Load data] from local files or connect to S3, GCS, Azure Blob, Snowflake, JDBC, and other sources. +* xref:savanna:graph-development:gsql-editor/index.adoc[Write and run GSQL] to create, install, and run graph queries in a live workspace. +* xref:savanna:workgroup-workspace:workspaces/connect-via-api.adoc[Query the graph from code] with generated curl, Python, or JavaScript examples for the graph data plane. +* xref:savanna:rest-api:authentication.adoc[Manage Savanna through the REST API] by authenticating to the control plane for workgroups, workspaces, and organization resources. -xref:savanna:resources:glossary.adoc[] | -xref:savanna:resources:terms_conditions.adoc[ Terms and Conditions] | -xref:savanna:resources:support.adoc[] +== Where to go next -|=== \ No newline at end of file +* xref:savanna:graph-development:index.adoc[Build] covers schemas, loading data, writing GSQL, and exploring graph results. +* xref:savanna:get-started:connect-agent-mcp.adoc[Connect AI tools with MCP] when you want an AI agent to work against your database. +* xref:savanna:workgroup-workspace:workspaces/connect-via-api.adoc[Connect via APIs] for generated curl, Python, or JavaScript against the graph data plane. +* xref:savanna:workgroup-workspace:index.adoc[Workgroups and workspaces] handles workgroups, workspaces, access, networking, and routine administration. diff --git a/modules/savanna/modules/overview/pages/overview.adoc b/modules/savanna/modules/overview/pages/overview.adoc index 753aa762..79da9c5c 100644 --- a/modules/savanna/modules/overview/pages/overview.adoc +++ b/modules/savanna/modules/overview/pages/overview.adoc @@ -1,7 +1,6 @@ -= TigerGraph Savanna Overview += How Savanna works :experimental: -:toc: left -:toclevels: 3 +:page-toclevels: 3 Purpose-built for graph analytics, TigerGraph Savanna empowers users to independently scale compute and storage resources, optimizing performance and cost-efficiency according to their specific requirements. @@ -58,7 +57,7 @@ TigerGraph Solution Kits are comprehensive, ready-to-use solutions that package They provide everything users need to get started with graph analytics and AI-driven insights in their respective fields. === GSQL Editor -The platform features a dedicated GSQL Editor—an integrated development environment (IDE) tailored for working with GSQL, the query language of TigerGraph. +The platform features a dedicated GSQL Editor, an integrated development environment (IDE) tailored for working with GSQL, the query language of TigerGraph. Designed with user convenience in mind, the GSQL Editor offers a user-friendly interface that simplifies the process of writing, testing, and optimizing GSQL queries. With syntax highlighting, code completion, query execution, and debugging capabilities, users can easily develop and fine tune their graph queries. Additionally, the GSQL Editor enables seamless collaboration within organizations by allowing users to share GSQL files, fostering teamwork and facilitating efficient collaboration among colleagues. @@ -75,6 +74,6 @@ It helps users discover valuable information within their data even if they are == Next Steps -Next, to understand how TigerGraph Savanna differs from other TigerGraph offerings see xref:overview:comparison_table.adoc[] or see xref:savanna:get-started:index.adoc[] to unlock its full potential. +Next, compare xref:overview:comparison_table.adoc[TigerGraph offerings] or xref:savanna:get-started:first-graph-ui.adoc[Build your graph in Savanna]. Return to xref:savanna:overview:index.adoc[TigerGraph Savanna] for another topic. diff --git a/modules/savanna/modules/overview/pages/pricing.adoc b/modules/savanna/modules/overview/pages/pricing.adoc index c03df643..8a25ee40 100644 --- a/modules/savanna/modules/overview/pages/pricing.adoc +++ b/modules/savanna/modules/overview/pages/pricing.adoc @@ -44,11 +44,12 @@ Platform Compute resources on TigerGraph Savanna are billed based on the size of the workspace(s) you deploy and the number of hours in use. [NOTE] +==== To simplify pricing, we have discontinued the use of TigerGraph Credits (TCRs) and directly use US dollars ($) instead. The net pricing has not changed. - The following table outlines the price for different sizes of compute resources. The compute prices are distinct from the storage fees listed below and are metered based on actual usage. For inquiries about pricing, volume discounts, or deploying in other regions, please contact us at sales@tigergraph.com. +==== [NOTE] ==== diff --git a/modules/savanna/modules/overview/pages/release-notes.adoc b/modules/savanna/modules/overview/pages/release-notes.adoc deleted file mode 100644 index 40829db7..00000000 --- a/modules/savanna/modules/overview/pages/release-notes.adoc +++ /dev/null @@ -1,480 +0,0 @@ -= TigerGraph Savanna Release Notes -:experimental: -//:page-aliases: change-log.adoc, release-notes.adoc -:toc: -:toclevels:2 - -== Aug 2026 -=== 2026-08-05 -==== Workspace Management - -*Enhanced Workspace Management: Workspace Card and Table views now provide quicker access to graph functions, database information, and common workspace management actions. - -==== Workspace Lifecycle - -*Increased Billing Grace Periods: We've increased the grace periods before workspace suspension and termination, giving you more time to resolve payment issues and avoid service interruptions. - -==== GSQL Editor - -*Improved Editing Experience: We've made usability and reliability improvements to the GSQL Editor for a smoother editing experience. - -==== Developer Support - -*Chatbot Assistant Update: We've retired the in-app chatbot as we focus on delivering more comprehensive developer resources and experiences. Documentation and support resources remain available, with additional capabilities planned for future releases. - - - -== Jul 2026 -=== 2026-07-01 -==== Version Maintenance - -* Flexible Maintenance Scheduling: You can now configure maintenance windows using a weekly interval (for example, every 4 weeks), providing flexibility for recurring maintenance. -* Automatic Maintenance: New workspaces now indicate that automatic maintenance upgrades are enabled by default. You can change this setting after workspace creation. -* Upgrade Notifications: Users now receive a notification when a workspace is scheduled for an automatic maintenance upgrade. - - - -== Jun 2026 -=== 2026-06-03 -==== Workspace Management - -* Enhanced Workspace Views: users can now manage Savanna workspaces through multiple visualization modes including Card View, Table View, and Graph View for improved operational visibility and navigation. -* Workspace Filtering: users can now filter workspaces to simplify navigation and management across large environments. - -==== Observability & APIs - -* Savanna Health Metrics via API: Savanna health and infrastructure metrics are now exposed through APIs, enabling external monitoring and operational dashboards. Metrics include CPU, disk, IOPS, and service-level utilization telemetry. - - - -== May 2026 -=== 2026-05-06 -==== Billing - -* Unpaid Invoice Reprocessing: users can now reprocess unpaid invoice requests directly within the platform, simplifying billing issue resolution. - -==== User Experience - -* In Platform Support Ticket Creation: users can now create and submit support tickets directly from within Savanna, streamlining support engagement and reducing time to resolution. - - - -== Apr 2026 -=== 2026-04-15 -==== User Experience - -* Users can now start with a pre-loaded sample graph (including data and queries) or create a workspace from scratch — making it easier to explore Savanna or jump directly into real-world use cases. - -==== Version Maintenance - -* Users can now schedule maintenance version upgrades at a preferred date and time, or choose to upgrade immediately, providing greater control and flexibility over environment updates. - -* Users are notified when a new database version is available, with options to upgrade immediately or defer to a future maintenance window. - -==== License Manager - -* New license metrics provide deeper insight into usage, allocation, and capacity, enabling better monitoring and management of licensed resources. - - - -== Mar 2026 -=== 2026-03-11 -==== Billing & Account Management - -* Savanna now displays the expiration date for free credits, providing users with greater transparency into credit availability and usage timelines. - -==== User Experience - -* Savanna now includes a product tour to help new users quickly understand the platform and navigate key features. - -* Users can now copy GSQL queries directly from the GSQL Editor using a built-in copy function, making it easier to reuse or share queries. - -==== Data Integration - -* Savanna now supports key-pair authentication for Snowflake, aligning with Snowflake’s deprecation of password-based authentication and improving security for integrations. - -==== GraphStudio - -* GraphStudio GSQL query editor functionality is now supported in Savanna, expanding compatibility for users familiar with the GraphStudio application - - - -== Feb 2026 -=== 2026-02-12 -==== Billing & Account Management - -* Savanna now enforces billing status by pausing workspaces and scheduling resource termination for organizations with exhausted credits and no valid payment method, with advance email notifications before termination. - -==== Bug Fixes - -* Fixed issues with query & developer experience -* Fixed UI and usability issues -* Fixed platform stability & reliability issues - - - -== Dec 2025 -=== 2025-12-10 -==== Workspace Improvements - -* Improved user experience when deleting workspace -* Improve visibility to data loading progress - - - -== Sep 2025 -=== 2025-09-23 -==== Bug Fixes - -* Fix WorkspaceSchedule timeout from 59 seconds to 1 minute. -* Update the redirect URL for access marketplace. - - - -== Sep 2025 -=== 2025-09-19 -==== Onboarding Experience - -* Introduced a guided onboarding flow with automated data mapping and loading job setup, helping new users get started faster and with less manual effort. - -==== Billing & Provisioning - -* Added AWS Marketplace support for seamless billing and provisioning, making it easier for customers to purchase and manage their deployments directly through AWS. - -==== Notifications - -* Launched new user notifications to guide registration tasks and ensure smoother account setup. - - - -== Aug 2025 -=== 2025-08-28 -==== Notifications - -* Improved messaging when deleting Read-Write workspaces to provide clearer guidance. -* Added a banner to notify users of upcoming downtime. -* Users are now notified when a backup restore has completed. - -==== Onboarding Experience - -* Onboarding credits now display their expiration date for better visibility. - -==== Monitoring Enhancements - -* CPU and Memory monitoring extended to multi-node deployments, with alerting enabled. - -==== Mobile Experience - -* Several Savanna capabilities are now optimized for small screens, including mobile devices. - -==== Other Enhancements - -* Bug fixes - - -=== 2025-08-14 -==== Other Enhancements - -* Bug fixes - - - -== Jul 2025 -=== 2025-07-24 -==== Ease of Use Enhancements - -* User-created files and folders are now grouped under “My Files” to reduce sidebar clutter -* We’ve moved the “Connect via API” option from the Workspace Connect drop-down to the GSQL Editor -* We’ve added an Explore button when hovering over a vertex in the GSQL Editor, allowing quick navigation to the Explore Graph interface -* We’ve improved the messaging when accessing GraphStudio while a workspace is restarting - -==== Other Enhancements - -* Bug fixes - - - -== June 2025 - -=== 2025-06-25 - -==== Workspace Enhancements - -* *Improved Read-Only Workspace Refresh Process:* Savanna now parallelizes workspace refresh tasks. Snapshots more accurately reflect the data state at the start of the refresh, improving both accuracy and performance. - -=== 2025-06-11 - -==== Workspace Enhancements - -* *Configurable Maintenance Window for Auto-Upgrades:* Users can now set a preferred weekly maintenance window in Savanna. Automatic version upgrades will run during your chosen time slot, giving you more control over your maintenance schedule. - -== May 2025 - -=== 2025-05-20 - -==== Onboarding Enhancements - -* *Pre-Provisioned Workspace for New Users:* New users now receive a ready-to-use workspace loaded with sample graph data at sign-up, simplifying the onboarding process and reducing setup time. - -== April 2025 - -=== 2025-04-29 - -==== Workspace Enhancements - -* *Encrypted Log Management and Search:* Users can securely collect, store, and search of application logs using Bring Your Own Key (BYOK) encryption, improving both visibility and operational efficiency. - -== March 2025 - -=== 2025-04-03 - -==== Data Ingestion Enhancements - -* *Snowflake Integration with Savanna:* Users can now connect securely to Snowflake from Savanna. Preview sample data, auto-generate graph schemas and mappings, customize data transformations, and manage your data loading jobs directly within Savanna. - -==== DB Updates - -* *TigerGraph 4.2 Preview Now Available in Savanna:* Preview TigerGraph Database version 4.2 in Savanna to access the latest database features and enhancements ahead of general availability. - -==== Help Enhancements - -* *AI-Enabled Chatbot Integration:* Savanna now offers an AI-powered help chatbot to assist with onboarding, troubleshooting, and user support, making it easier to find answers and get help quickly. - -== Jan 2025 - -=== 2025-1-20 -==== Workspace Enhancements -* Explore Graph: Enable editing of graph data in the explore graph page. - -==== Other Enhancements -* Bug fixes. - -=== 2025-1-16 -==== Workspace Enhancements -* BYOC: Bring Your Own Cloud (BYOC) is now available for enterprise users. Users can now deploy TigerGraph Savanna on your own cloud infrastructure, providing greater flexibility and control over your graph database workspaces. - -==== Other Enhancements -* Bug fixes. - -== Dec 2024 -=== 2024-12-19 -==== Workspace Enhancements -* Data Profile: Data Profile is now available in the workspace, providing a comprehensive overview of your graph data, including data distribution, schema, and statistics. -* API documentation: API documentation is now available, allowing you to access detailed information about the TigerGraph Savanna APIs. - -==== Observability Enhancements -* Email notification: Users will receive email notification in advance when we are cleaning up delinquent workspaces. -* Visual Indicators for Critical Memory Usage: You can get a more intuitive and visual view of critical memory usage. - -==== Other Enhancements -* Bug fixes. - -== Nov 2024 -=== 2024-11-28 -==== Workspace Enhancements -* Enforce auto stop to free tier: Auto stop is enabled and cannot change for Free tier customers’ workspaces - -==== GSQL Editor Enhancements -* Auto-Completion: Boost your productivity with auto-completion suggestions that help you write cypher queries faster and with fewer errors. -* Add tutorials to GSQL Editor: Providing samples of schema changes, data loading, and queries for customer reference greatly reduces the learning curve for users. - -==== Data Loading Enhancements -* Enhanced the experience of automatic mapping, and optimize the graph widget performance - -==== Other Enhancements -* Bug fixes. - -=== 2024-11-13 -==== Workspace Enhancements -* Graph Admin: Revamp Graph Admin Configs to make it more user-friendly. -* Quota Management: Check manual backup and auto backup limit separately, and failed backups do not count towards the backup quota limit. - -==== GSQL Editor Enhancements -* Support JSON view for GSQL editor: Support JSON format to render the query result in GSQL editor - -==== Data Loading Enhancements -* Support loading folder of data sources: Users don’t need specify the data file and can load data from all files within the folder. - -==== Other Enhancements -* Bug fixes. - -== Oct 2024 -=== 2024-10-31 -==== Observability Enhancements -* xref:savanna:workgroup-workspace:workspaces/settings.adoc#_alerts_[Alerting]: user can add recipients to receive alert email. - -==== GSQL Editor Enhancements -* Improved User Interface: Notify users to save all files when they are leaving the editor page with unsaved files or schema. - -==== Other Enhancements -* Bug fixes. - - -=== 2024-10-15 - -==== Workspace Enhancements - -* xref:savanna:workgroup-workspace:workspaces/schedule.adoc[Scheduled Workspace Expansion and Shrink]: Schedule workspace expansion and shrink operations to align with your usage patterns and optimize resource allocation. -* Support HA with Cross-Zone Resiliency: Ensure business continuity and minimize downtime with the introduction of cross-zone high availability support, allowing you to deploy and manage resilient graph database clusters across multiple availability zones for enhanced fault tolerance and disaster recovery capabilities. - -==== Observability Enhancements - -* xref:savanna:workgroup-workspace:workspaces/settings.adoc#_alerts_[Alerting] System: Stay informed about critical events and performance anomalies through the new alerting system, enabling proactive management of your graph database workspaces. - -==== Other Enhancements -* Improved stability and performance. -* Bug fixes. - -== Sep 2024 -=== 2024-09-28 - -==== General - -* Release xref:4.1@tigergraph-server:release-notes:index.adoc[TigerGraph Server 4.1 Preview] on TigerGraph Savanna. - -==== Workspace Enhancements - -* Output to Amazon S3: Benefit from integration with Amazon S3 for data output, enabling you to store and retrieve data from Amazon S3 buckets directly from your TigerGraph Savanna environment. -* Built-in Read-only Algorithms: Run built-in read-only algorithms on read-only workspaces, empowering users to leverage algorithmic capabilities for analysis and insights. - -==== GSQL Editor Enhancements - -* Improved User Interface: The GSQL Editor has undergone a significant facelift, providing a more intuitive and user-friendly interface for writing and executing GSQL queries. -* Syntax Highlighting: Enjoy enhanced code readability with syntax highlighting for GSQL queries, making it easier to identify keywords, variables, and functions. -* Auto-Completion: Boost your productivity with auto-completion suggestions that help you write GSQL queries faster and with fewer errors. - -==== Data Loading and Solution Kits - -* Enhanced xref:savanna:graph-development:load-data/index.adoc[Data Loading] Capabilities: Experience faster and more efficient data loading processes with optimized performance and reliability. -* Customizable UDF: Customize user-defined functions (UDFs) to extend the functionality of your graph database workspaces, enabling you to implement custom logic and algorithms for advanced analytics and insights. - -==== Other Enhancements -* xref:savanna:workgroup-workspace:workgroups/how2-config-network-access.adoc[Network Configuration]: Set up IP allow lists to protect your workspaces, allowing you to control access and enhance the security of your graph database workspaces. -* xref:savanna:rest-api:index.adoc[Controller APIs] Support: Enable APIs to operate on TigerGraph Savanna workspaces by providing support for API keys, enhancing the flexibility and security of interacting with your graph database through APIs. -* Bug fixes. - -=== 2024-09-12 - -==== Workspace Enhancements - -* xref:savanna:workgroup-workspace:workspaces/settings.adoc#_workspace_size_suggestion[Capacity Planning]: Benefit from capacity planning features that help you estimate and plan your workspace size and cost more efficiently. - -==== Other Enhancements - -* Bug fixes. - -== Aug 2024 -=== 2024-08-27 - -==== Workspace Enhancements - -* xref:savanna:workgroup-workspace:workspaces/settings.adoc#_auto_suspend[Auto Suspend] Enhancement: Auto Suspend feature now supports detection of installing queries, running queries, loading jobs and changing schema. - -==== Other Enhancements - -* Bug fixes. - -=== 2024-08-14 - -==== Data Loading and Solution Kits - -* xref:savanna:integrations:solutions.adoc[Solution Kits]: Explore an expanded collection of solution kits tailored to specific use cases, providing pre-built templates and workflows for accelerated graph database development. - -== Jul 2024 -=== 2024-07-31 - -==== General - -* Support GSQL API v2: Introducing GSQL API v2 support for enhanced query performance and efficiency, enabling users to leverage the latest GSQL features and optimizations. - -==== Obvervability Enhancements - -* Enhanced xref:savanna:workgroup-workspace:workgroups/monitor-workspaces.adoc[Monitoring] Tools: Gain deeper insights into your TigerGraph Savanna environment with improved monitoring tools, allowing you to track performance metrics and diagnose issues effectively. - -==== Other Enhancements - -* Bug fixes. - -=== 2024-07-13 - -==== Workspace Enhancements - -* xref:savanna:workgroup-workspace:workspaces/readwrite-readonly.adoc#_update_read_onlyro_workspace[Syncing Read-only Data with Read-write]: Enable synchronization of read-only data with read-write workspaces, ensuring consistency across different workspace types. - -==== Other Enhancements - -* Bug fixes. - -== Apr 2024 - -=== TigerGraph Savanna (Beta) was released on Monday, April 29th, 2024. - -//* xref:savanna:get-started:index.adoc[Get Started] using TigerGraph Savanna with the 4.0. -* xref:savanna:overview:overview.adoc#_separation_of_storage_and_compute[Separation of Storage and Compute] - Introduction of a unique architecture that separates storage and compute, allowing users to scale resources independently. - -* xref:workgroup-workspace:workgroups/workgroup.adoc[Workgroups] and xref:workgroup-workspace:workspaces/workspace.adoc[Workspaces] give users control over resource management. - -* xref:savanna:graph-development:load-data/index.adoc[] - Load Data into TigerGraph Savanna and unlock its potential. - -* xref:savanna:graph-development:design-schema/index.adoc[Design Schema] - Easily modify and manage the schema of your graph databases using Schema Designer UI. - -* xref:savanna:graph-development:gsql-editor/index.adoc[GSQL Editor] - The GSQL Editor is a powerful tool for developing and executing GSQL queries, allowing you to unlock insights from your graph databases by xref:savanna:graph-development:gsql-editor/how2-edit-gsql-query.adoc[Editing, Running, and Sharing a GSQL Query.]. - -* xref:savanna:graph-development:explore-graph/index.adoc[] and xref:savanna:graph-development:explore-graph/how2-use-pattern-search.adoc[] - Visualize your data and navigate to understand complex connections and dependencies. - -* xref:integrations:index.adoc[] - TigerGraph Savanna offers several powerful integration tools in our marketplace. -** xref:savanna:integrations:solutions.adoc[] - Pre-built solution kits that address common use cases and industry-specific challenges. -** xref:savanna:integrations:add-ons.adoc[] - Extend the capabilities of TigerGraph Savanna with add-ons tailored to your needs. Add-ons provide additional functionalities and integrations that enhance your graph database workflow. -*** xref:savanna:integrations:insights.adoc[Insights Add-On] - TigerGraph Insights is a no-code visual graph analyzer that makes building data analytics dashboards intuitive. -*** xref:savanna:integrations:graphstudio.adoc[GraphStudio™ Add-On] - TigerGraph GraphStudio™ offers a range of features and tools to simplify the graph development process. -*** xref:savanna:integrations:graphql.adoc[GraphQL Add-On] - TigerGraph GraphQL enables users to access and modify graph data in TigerGraph using GraphQL queries. - -* xref:savanna:administration:index.adoc[] - The tools for organizational administrators to xref:savanna:administration:how2-invite-users.adoc[] -, xref:savanna:administration:how2-access-mgnt.adoc[Mange Access], xref:savanna:administration:settings/how2-use-organization-mgnt.adoc[Manage Organization]. - -* xref:savanna:administration:billing/index.adoc[Billing UI] - The new billing UI allows users to check and pay only for their specific usage of storage, data access, and compute resources -with an xref:savanna:administration:billing/payment-methods.adoc[easy-to-use Payment Method manager], and the xref:savanna:administration:billing/invoices.adoc[ability to check and export invoices]. - -//// -== Fixed issues -=== Fixed and Improved [v number] - -==== Functionality -* Description (Ticket Number) - -==== Crashes and Deadlocks - -* Description (Ticket Number) - -==== Improvements - -* Description (Ticket Number) - -== Known Issues and Limitations - -[cols="4", separator=¦ ] -|=== -¦ Description ¦ Found In ¦ Workaround ¦ Fixed In - -|=== - -=== Compatibility Issues - -[cols="2", separator=¦ ] -|=== -¦ Description ¦ Version Introduced - -|=== - -=== Deprecations - -[cols="3", separator=¦ ] -|=== -¦ Description ¦ Deprecated ¦ Removed - -|=== - -== Release notes for previous versions -* TBD -//// - diff --git a/modules/savanna/modules/resources/nav.adoc b/modules/savanna/modules/resources/nav.adoc index 5db2973b..ecb6cfe3 100644 --- a/modules/savanna/modules/resources/nav.adoc +++ b/modules/savanna/modules/resources/nav.adoc @@ -1,11 +1,13 @@ -* xref:savanna:resources:index.adoc[Resources] -** xref:savanna:resources:aws.adoc[] -** xref:savanna:resources:gcp.adoc[] -** xref:savanna:resources:azure.adoc[] -** xref:savanna:resources:glossary.adoc[] -** xref:savanna:resources:support.adoc[] -** xref:savanna:resources:faqs.adoc[] -** xref:savanna:resources:billing-transition-faq.adoc[Billing Transition FAQ] -** xref:savanna:resources:quota_policy.adoc[Subscription Plans and Quota Policy] +* Resources +** xref:savanna:resources:index.adoc[Overview] +** xref:savanna:overview:overview.adoc[How Savanna works] +** xref:savanna:overview:comparison_table.adoc[Compare offerings] +** xref:savanna:resources:aws.adoc[Amazon Web Services] +** xref:savanna:resources:gcp.adoc[Google Cloud Platform] +** xref:savanna:resources:azure.adoc[Microsoft Azure] +** xref:savanna:resources:glossary.adoc[Glossary] +** xref:savanna:resources:support.adoc[Support] +** xref:savanna:resources:faqs.adoc[FAQs] +** xref:savanna:resources:billing-transition-faq.adoc[Billing transition FAQ] +** xref:savanna:resources:quota_policy.adoc[Subscription plans and quota policy] // ** xref:savanna:resources:terms_conditions.adoc[Terms and Conditions] -// ** xref:resources:faqs.adoc[FAQs] diff --git a/modules/savanna/modules/resources/pages/faqs.adoc b/modules/savanna/modules/resources/pages/faqs.adoc index dcd2301b..b578ecd1 100644 --- a/modules/savanna/modules/resources/pages/faqs.adoc +++ b/modules/savanna/modules/resources/pages/faqs.adoc @@ -126,7 +126,7 @@ For additional developer resources for free tier users, join the TigerGraph deve === *Q: What is the user interface for the TigerGraph Savanna?* -A: The TigerGraph Savanna portal provides a browser-based interface that makes it easy to manage, monitor, and operate your graph database. Through this portal, you can load data, design schemas, write queries, and explore your graph. Additionally, you have access to a suite of add-ons, including the TigerGraph xref:gui:graphstudio:overview.adoc[GraphStudio™ UI (User Interface)] and TigerGraph xref:insights:intro:index.adoc[Insights]. +A: The TigerGraph Savanna portal provides a browser-based interface that makes it easy to manage, monitor, and operate your graph database. Through this portal, you can load data, design schemas, write queries, and explore your graph. Additionally, you have access to a suite of add-ons, including the TigerGraph https://www.tigergraph.com/docs/gui/4.3/graphstudio/overview/[GraphStudio™ UI (User Interface)^] and TigerGraph https://www.tigergraph.com/docs/insights/4.3/intro/[Insights^]. === *Q: What graph query language does TigerGraph support?* @@ -373,7 +373,7 @@ You can enable HA, which adds a replication factor of 2 or 3 for your workspace. A: Partition factor means the number of parts or components your graph data is split into, which also equals the number of instances that collectively store one copy of the full graph. For example, if you select a partition factor of 3, each instance will hold approximately 1/3 of your data. -Please read the xref:tigergraph-server:cluster-and-ha-management:ha-cluster.adoc[] documentation for additional details about partitions and replications. For the partition factor for each workspace size, please refer to the xref:savanna:workgroup-workspace:workspaces/workspace-size.adoc[] documentation. +Please read the https://www.tigergraph.com/docs/tigergraph-server/4.3/cluster-and-ha-management/ha-cluster/[High Availability Cluster Configuration^] documentation for additional details about partitions and replications. For the partition factor for each workspace size, please refer to the xref:savanna:workgroup-workspace:workspaces/workspace-size.adoc[] documentation. [#q-what-is-the-difference-between-replication-and-partition] @@ -406,11 +406,11 @@ A: When you register your account, you can select either a username and password === *Q: How do I access my TigerGraph database and POST to TigerGraph?* -A: You can access the database through the TigerGraph Savanna portal, TigerGraph GraphStudio™ visual interface and through RESTful endpoints. Use RESTful endpoints to POST to TigerGraph clusters and develop applications. Please refer to the xref:tigergraph-server:API:index.adoc[RESTful API User Guide] for more information. To find the RESTful endpoints for queries created in GraphStudio™, please read our documentation on xref:gui:graphstudio:write-queries.adoc[showing query endpoints]. There is also a recorded webinar which demos the process in detail: link:https://info.tigergraph.com/graph-gurus-24[Graph Gurus Episode 24] +A: You can access the database through the TigerGraph Savanna portal, TigerGraph GraphStudio™ visual interface and through RESTful endpoints. Use RESTful endpoints to POST to TigerGraph clusters and develop applications. Please refer to the https://www.tigergraph.com/docs/tigergraph-server/4.3/API/[RESTful API User Guide^] for more information. To find the RESTful endpoints for queries created in GraphStudio™, please read our documentation on https://www.tigergraph.com/docs/gui/4.3/graphstudio/write-queries/[showing query endpoints^]. There is also a recorded webinar which demos the process in detail: link:https://info.tigergraph.com/graph-gurus-24[Graph Gurus Episode 24] *Here is the step-by-step instructions:* -TigerGraph Savanna enables xref:tigergraph-server:API:authentication.adoc[REST{pp} Authentication] to securely connect TigerGraph Savanna workspaces with your application through an endpoint on port 443 at `443/restpp/`. +TigerGraph Savanna enables https://www.tigergraph.com/docs/tigergraph-server/4.3/API/authentication/[REST{pp} Authentication^] to securely connect TigerGraph Savanna workspaces with your application through an endpoint on port 443 at `443/restpp/`. *Step 1:* (First time only) Navigate to the TigerGraph cluster's Admin Portal, and generate a secret from User Management. @@ -524,5 +524,5 @@ Contact link:mailto:sales@tigergraph.com[sales@tigergraph.com] to discuss query === *Q: What third-party software is used in TigerGraph Savanna?* -A: A list of third-party software used in the TigerGraph engine and TigerGraph Savanna is available at xref:tigergraph-server:reference:patents-and-third-party-software.adoc[]. +A: A list of third-party software used in the TigerGraph engine and TigerGraph Savanna is available at https://www.tigergraph.com/docs/tigergraph-server/4.3/reference/patents-and-third-party-software/[Patents and Third-Party Software^]. // diff --git a/modules/savanna/modules/resources/pages/index.adoc b/modules/savanna/modules/resources/pages/index.adoc index b2b4983e..5ac6648b 100644 --- a/modules/savanna/modules/resources/pages/index.adoc +++ b/modules/savanna/modules/resources/pages/index.adoc @@ -1,36 +1,44 @@ = Resources :experimental: -Resources provide other documents to help support your TigerGraph Savanna journey. +Reference material for TigerGraph Savanna: how the product works, how offerings compare, cloud providers, and support. -== xref:resources:glossary.adoc[] +== Product -Here you can refer terms used in TigerGraph Savanna. +[.start-cards,cols="2",grid=none,frame=none, separator=¦] +|=== +¦ +xref:savanna:overview:overview.adoc[How Savanna works] -== xref:resources:support.adoc[] +Architecture and product concepts behind the managed service. +¦ +xref:savanna:overview:comparison_table.adoc[Compare offerings] -Here you can learn how to get support. +See how Savanna compares to Enterprise Server and Cloud Classic. +¦ +xref:quota_policy.adoc[Plans and quota policy] -== xref:resources:faqs.adoc[] +Subscription plans and the quota rules that apply to them. +¦ +xref:savanna:overview:changelog.adoc[What's new] -Here you can find answers to frequently asked questions. +Recent features, improvements, and fixes in the Savanna changelog. +|=== -== xref:resources:aws.adoc[] +== Cloud providers -Here you can learn about Amazon Web Services (AWS). +* xref:resources:aws.adoc[Amazon Web Services] +* xref:resources:gcp.adoc[Google Cloud Platform] +* xref:resources:azure.adoc[Microsoft Azure] -== xref:resources:gcp.adoc[] +== Help -Here you can learn about Google Cloud Platform (GCP). - -== xref:resources:azure.adoc[] - -Here you can learn about Microsoft Azure. - -== Policy Documents - -If you are a participating TigerGraph Savanna user, please review our policy documents: - -* xref:quota_policy.adoc[TigerGraph Savanna Subscription Plans and Quota Policy] +* xref:resources:glossary.adoc[Glossary] +* xref:resources:support.adoc[Support] +* xref:resources:faqs.adoc[FAQs] +* xref:resources:billing-transition-faq.adoc[Billing transition FAQ] +== Where to go next +* xref:savanna:overview:index.adoc[Introduction] for getting started paths and common tasks. +* xref:savanna:administration:index.adoc[Administration] for users, access, and organization settings. diff --git a/modules/savanna/modules/resources/pages/quota_policy.adoc b/modules/savanna/modules/resources/pages/quota_policy.adoc index ff338ed9..f9cec7ff 100644 --- a/modules/savanna/modules/resources/pages/quota_policy.adoc +++ b/modules/savanna/modules/resources/pages/quota_policy.adoc @@ -4,7 +4,9 @@ This document aims to provide customers with a clear understanding of the various subscription plans available, along with their associated resource allocations and limitations. It ensures customers can make informed decisions about their usage and upgrade options, enabling them to manage their resources and costs effectively while leveraging the full potential of TigerGraph Savanna. [IMPORTANT] +==== This policy is subject to review and adjustment at the discretion of TigerGraph's management based on feedback from the user community and evolving business needs. +==== == Subscription Plans TigerGraph Savanna offers four distinct subscription plans to cater to various customer needs: diff --git a/modules/savanna/modules/rest-api/nav.adoc b/modules/savanna/modules/rest-api/nav.adoc index 59584724..b076ec70 100644 --- a/modules/savanna/modules/rest-api/nav.adoc +++ b/modules/savanna/modules/rest-api/nav.adoc @@ -1,4 +1,5 @@ -* xref:index.adoc[REST API (Preview)] +* REST API reference +** xref:index.adoc[Overview] ** xref:rest-api:authentication.adoc[Authentication] ** xref:rest-api:endpoints.adoc[Endpoints] -** xref:rest-api:definitions.adoc[Definitions] \ No newline at end of file +** xref:rest-api:definitions.adoc[Definitions] diff --git a/modules/savanna/modules/rest-api/pages/index.adoc b/modules/savanna/modules/rest-api/pages/index.adoc index d1df0cc7..8bec0e47 100644 --- a/modules/savanna/modules/rest-api/pages/index.adoc +++ b/modules/savanna/modules/rest-api/pages/index.adoc @@ -1,24 +1,39 @@ -= REST API (Preview) += REST API reference (Preview) :experimental: -TigerGraph Savanna REST API provides a set of endpoints that allow developers to interact programmatically with TigerGraph Savanna services. Those APIs enable you to manage your graph databases and perform various administrative tasks. +Control-plane REST API for managing TigerGraph Savanna (workgroups, workspaces, and related resources) via `api.tgcloud.io`. + +For data-plane queries on a workspace, see xref:savanna:workgroup-workspace:workspaces/connect-via-api.adoc[Connect via APIs]. +For agent-based access, see xref:savanna:get-started:connect-agent-mcp.adoc[Connect AI tools with MCP]. [IMPORTANT] ==== -The TigerGraph Savanna REST API is currently in preview version. Features and endpoints may change as the API evolves. +The TigerGraph Savanna REST API is currently in preview. Features and endpoints may change as the API evolves. ==== +== Reference -== xref:savanna:rest-api:authentication.adoc[] - -Learn how to authenticate with the TigerGraph Savanna REST API. +[.start-cards,cols="2",grid=none,frame=none, separator=¦] +|=== +¦ +xref:savanna:rest-api:authentication.adoc[Authentication] +Authenticate to the control plane before you call any endpoint. +¦ +xref:savanna:rest-api:endpoints.adoc[Endpoints] -== xref:savanna:rest-api:endpoints.adoc[] +Browse the available control-plane endpoints. +¦ +xref:savanna:rest-api:definitions.adoc[Definitions] -Explore the REST API endpoints available in TigerGraph Savanna. +Look up request and response schemas used by the API. +¦ +xref:savanna:administration:settings/how2-create-api-key.adoc[Create an API key] -== xref:savanna:rest-api:definitions.adoc[] +Generate a key for scripts and services that call the control plane. +|=== -Look up the REST API data schema definitions in TigerGraph Savanna. +== Where to go next +* xref:savanna:workgroup-workspace:workspaces/connect-via-api.adoc[Connect via APIs] for data-plane curl, Python, and JavaScript examples. +* xref:savanna:get-started:connect-agent-mcp.adoc[Connect AI tools with MCP] when you want an AI agent to work against your database. diff --git a/modules/savanna/modules/workgroup-workspace/images/create-workgroup.png b/modules/savanna/modules/workgroup-workspace/images/create-workgroup.png index 60b31f60..c1bc74c3 100644 Binary files a/modules/savanna/modules/workgroup-workspace/images/create-workgroup.png and b/modules/savanna/modules/workgroup-workspace/images/create-workgroup.png differ diff --git a/modules/savanna/modules/workgroup-workspace/images/onboarding-setup-workspace.png b/modules/savanna/modules/workgroup-workspace/images/onboarding-setup-workspace.png new file mode 100644 index 00000000..48db4ed3 Binary files /dev/null and b/modules/savanna/modules/workgroup-workspace/images/onboarding-setup-workspace.png differ diff --git a/modules/savanna/modules/workgroup-workspace/nav.adoc b/modules/savanna/modules/workgroup-workspace/nav.adoc index 333103f6..5aa66f4d 100644 --- a/modules/savanna/modules/workgroup-workspace/nav.adoc +++ b/modules/savanna/modules/workgroup-workspace/nav.adoc @@ -1,17 +1,17 @@ -* xref:index.adoc[] -** xref:savanna:workgroup-workspace:workgroups/workgroup.adoc[Workgroups] -*** xref:savanna:workgroup-workspace:workgroups/how2-create-a-workgroup.adoc[Create Workgroup] -*** xref:savanna:workgroup-workspace:workgroups/how2-workgroup-access.adoc[Permissions] -*** xref:savanna:workgroup-workspace:workgroups/monitor-workspaces.adoc[Monitor] -*** xref:savanna:workgroup-workspace:workgroups/backup-and-restore.adoc[] -*** xref:savanna:workgroup-workspace:workgroups/workspace-logs.adoc[] -*** xref:savanna:workgroup-workspace:workgroups/how2-config-network-access.adoc[Network Access] -** xref:workspaces/workspace.adoc[Workspaces] -*** xref:savanna:workgroup-workspace:workspaces/how2-create-a-workspace.adoc[Create Workspace] -*** xref:savanna:workgroup-workspace:workspaces/workspace-size.adoc[] -*** xref:savanna:workgroup-workspace:workspaces/settings.adoc[Workspace Settings] -*** xref:savanna:workgroup-workspace:workspaces/readwrite-readonly.adoc[RW/RO Workspaces] -*** xref:savanna:workgroup-workspace:workspaces/expansion-shrink.adoc[Expand and Shrink] -*** xref:savanna:workgroup-workspace:workspaces/schedule.adoc[Schedule] -*** xref:savanna:workgroup-workspace:workspaces/connect-via-api.adoc[] - +* Workgroups and workspaces +** xref:index.adoc[Overview] +** xref:savanna:workgroup-workspace:workgroups/workgroup.adoc[About workgroups] +** xref:savanna:workgroup-workspace:workgroups/how2-create-a-workgroup.adoc[Create a workgroup] +** xref:savanna:workgroup-workspace:workgroups/how2-workgroup-access.adoc[Manage workgroup access] +** xref:savanna:workgroup-workspace:workgroups/how2-config-network-access.adoc[Configure network access] +** xref:savanna:workgroup-workspace:workspaces/workspace.adoc[About workspaces] +** xref:savanna:workgroup-workspace:workspaces/how2-create-a-workspace.adoc[Create a workspace] +** xref:savanna:workgroup-workspace:workspaces/workspace-size.adoc[Choose a workspace size] +** xref:savanna:workgroup-workspace:workspaces/readwrite-readonly.adoc[Read-write and read-only] +** xref:savanna:workgroup-workspace:workspaces/settings.adoc[Workspace settings] +** xref:savanna:workgroup-workspace:workspaces/expansion-shrink.adoc[Expand and shrink] +** xref:savanna:workgroup-workspace:workspaces/schedule.adoc[Schedule operations] +** xref:savanna:workgroup-workspace:workgroups/backup-and-restore.adoc[Back up and restore] +** xref:savanna:workgroup-workspace:workgroups/monitor-workspaces.adoc[Monitor workspaces] +** xref:savanna:workgroup-workspace:workgroups/workspace-logs.adoc[Workspace logs] +** xref:savanna:workgroup-workspace:workspaces/connect-via-api.adoc[Connect through APIs] diff --git a/modules/savanna/modules/workgroup-workspace/pages/index.adoc b/modules/savanna/modules/workgroup-workspace/pages/index.adoc index 046ebcbd..6d4a37be 100644 --- a/modules/savanna/modules/workgroup-workspace/pages/index.adoc +++ b/modules/savanna/modules/workgroup-workspace/pages/index.adoc @@ -1,57 +1,61 @@ -= Workgroups and Workspaces += Workgroups and workspaces :experimental: -In TigerGraph Savanna, the concepts of workgroup, workspace, and database are used to organize and manage projects and data within the platform. -By utilizing xref:savanna:workgroup-workspace:workgroups/workgroup.adoc[workgroups], xref:savanna:workgroup-workspace:workspaces/workspace.adoc[workspaces and databases], TigerGraph Savanna provides a flexible and scalable environment for managing projects, allocating compute resources, and working with graph data effectively. +Organize projects with workgroups, then attach compute with workspaces that connect to your graph database. -== xref:savanna:workgroup-workspace:workgroups/workgroup.adoc[] +== Concepts and tasks -Learn xref:savanna:workgroup-workspace:workgroups/how2-create-a-workgroup.adoc[] the first step before creating a xref:savanna:workgroup-workspace:workspaces/workspace.adoc[Workspace] -and learning xref:savanna:workgroup-workspace:workgroups/how2-workgroup-access.adoc[]. +[.start-cards,cols="2",grid=none,frame=none, separator=¦] +|=== +¦ +xref:savanna:workgroup-workspace:workgroups/workgroup.adoc[Workgroups] +A container that holds the workspaces and databases for a team or use case. +¦ +xref:savanna:workgroup-workspace:workspaces/workspace.adoc[Workspaces and databases] -== xref:savanna:workgroup-workspace:workspaces/workspace.adoc[Workspace and Database Overview] -Learn xref:savanna:workgroup-workspace:workspaces/how2-create-a-workspace.adoc[] and unlock its many features. +The compute unit attached to your graph data, and the database it connects to. +¦ +xref:savanna:workgroup-workspace:workspaces/settings.adoc[Workspace settings] -Such as: +Customize and fine tune the configuration of an individual workspace. +¦ +xref:savanna:workgroup-workspace:workspaces/readwrite-readonly.adoc[Read-write and read-only] -* xref:savanna:workgroup-workspace:workspaces/settings.adoc[] -- -Learn how advanced settings in workspace allow users to customize and fine tune various aspects of their workspace configuration. +See how read-write and read-only workspaces connect to a database. +¦ +xref:savanna:workgroup-workspace:workspaces/workspace-size.adoc[Workspace size] -* xref:savanna:workgroup-workspace:workspaces/readwrite-readonly.adoc[] -- -Learn how Read-Write (RW) and Read-Only (RO) Workspaces will connect to a database. +Choose a size based on your data volume and performance requirements. +¦ +xref:savanna:workgroup-workspace:workspaces/expansion-shrink.adoc[Expand or shrink] -* xref:savanna:workgroup-workspace:workspaces/workspace-size.adoc[] -- -Learn how to specify the size based on your data and performance requirements. +Adjust the capacity of a workspace as your data grows or changes. +¦ +xref:savanna:workgroup-workspace:workgroups/backup-and-restore.adoc[Backup and restore] -* xref:savanna:workgroup-workspace:workspaces/expansion-shrink.adoc[] -- -Learn how to adjust the capacity of your workspaces as your data grows or changes. +Create backup points and restore a workspace to a specific point in time. +¦ +xref:savanna:workgroup-workspace:workspaces/connect-via-api.adoc[Connect via APIs] -* xref:savanna:workgroup-workspace:workgroups/backup-and-restore.adoc[] -- -Learn how to create backup points and restore your workspace to a specific point in time. +Reach your graph database over REST from your own code. +¦ +xref:savanna:workgroup-workspace:workgroups/monitor-workspaces.adoc[Monitor workspaces] -* xref:savanna:workgroup-workspace:workspaces/connect-via-api.adoc[] -- -Learn how to connect to your graph database using REST APIs. +Track the status and resource usage of your workspaces. +¦ +xref:savanna:workgroup-workspace:workgroups/workspace-logs.adoc[Workspace logs] -* xref:savanna:workgroup-workspace:workgroups/monitor-workspaces.adoc[] -- -Learn how TigerGraph Savanna offers comprehensive monitoring capabilities that allow you to track the status and resource usage of your workspaces. +Enable and read logs to identify and resolve issues quickly. +|=== -* xref:savanna:workgroup-workspace:workgroups/workspace-logs.adoc[] -- -Learn how to enable and use logs to quickly identify and resolve issues, thereby enhancing the reliability and performance of the system in TigerGraph Savana. - -== Next Steps - -Next, learn how to xref:savanna:graph-development:load-data/index.adoc[Load Data] into TigerGraph Savanna. - -Or return to the xref:savanna:overview:index.adoc[Overview] page for a different topic. +== Common tasks +* xref:savanna:workgroup-workspace:workgroups/how2-create-a-workgroup.adoc[Create a workgroup] +* xref:savanna:workgroup-workspace:workgroups/how2-workgroup-access.adoc[Manage workgroup access] +* xref:savanna:workgroup-workspace:workspaces/how2-create-a-workspace.adoc[Create a workspace] +== Where to go next +* xref:savanna:graph-development:index.adoc[Build] covers schemas, loading data, writing GSQL, and exploring graph results. +* xref:savanna:graph-development:load-data/index.adoc[Load data] when you are ready to ingest into a workspace. diff --git a/modules/savanna/modules/workgroup-workspace/pages/workgroups/backup-and-restore.adoc b/modules/savanna/modules/workgroup-workspace/pages/workgroups/backup-and-restore.adoc index d73496dd..9cf73bdc 100644 --- a/modules/savanna/modules/workgroup-workspace/pages/workgroups/backup-and-restore.adoc +++ b/modules/savanna/modules/workgroup-workspace/pages/workgroups/backup-and-restore.adoc @@ -108,8 +108,3 @@ image::Screenshot 2024-04-17 at 5.40.16 PM.png[] Next, learn more about how to xref:savanna:workgroup-workspace:workspaces/connect-via-api.adoc[] a workspace, xref:savanna:workgroup-workspace:workgroups/monitor-workspaces.adoc[], or xref:savanna:workgroup-workspace:workgroups/workspace-logs.adoc[use workspace logs]. Return to the xref:savanna:workgroup-workspace:index.adoc[] page or xref:savanna:overview:index.adoc[Overview] page for a different topic. - - - - - diff --git a/modules/savanna/modules/workgroup-workspace/pages/workgroups/how2-config-network-access.adoc b/modules/savanna/modules/workgroup-workspace/pages/workgroups/how2-config-network-access.adoc index ec3550ce..00002bff 100644 --- a/modules/savanna/modules/workgroup-workspace/pages/workgroups/how2-config-network-access.adoc +++ b/modules/savanna/modules/workgroup-workspace/pages/workgroups/how2-config-network-access.adoc @@ -76,9 +76,8 @@ xref:savanna:workgroup-workspace:workspaces/workspace.adoc[Workspaces and Databa xref:savanna:workgroup-workspace:workspaces/workspace.adoc[Link Text] :next-button: pass:[xref:savanna:workgroup-workspace:workspaces/workspace.adoc[Next]] -{next-button} ++++ Next ++++ -//// \ No newline at end of file +//// diff --git a/modules/savanna/modules/workgroup-workspace/pages/workgroups/how2-create-a-workgroup.adoc b/modules/savanna/modules/workgroup-workspace/pages/workgroups/how2-create-a-workgroup.adoc index fa194216..92549c75 100644 --- a/modules/savanna/modules/workgroup-workspace/pages/workgroups/how2-create-a-workgroup.adoc +++ b/modules/savanna/modules/workgroup-workspace/pages/workgroups/how2-create-a-workgroup.adoc @@ -1,59 +1,37 @@ -= How to Create a Workgroup += Create a workgroup :experimental: -To learn more about workgroups see xref:savanna:workgroup-workspace:workgroups/workgroup.adoc[]. -To create a workgroup in TigerGraph Savanna, follow the steps below. +Creating a workgroup is a two-step wizard: you name the workgroup, then you create its first workspace on the next screen. +You cannot finish a new workgroup without that workspace. -== Create a Workgroup +== After you sign up -[Placeholder for create workgroup screenshot] +The first time you register, Savanna provisions a workgroup and a workspace for you. +Wait until setup finishes, then start building — you do not need to create either one to try the product. -. Log in to your TigerGraph Savanna account. -+ -image::login.png[width=450] - -. Click on the btn:[Create Workspace] button on your landing page. -+ -image::landing-page.png[] +image::onboarding-setup-workspace.png[] -. Alternatively, from the dashboard, navigate to the btn:[Workgroups] section and click on the btn:[Create Workgroup] or you can click on the image:plusbutton.png[width=50,height=50] button next to btn:[Workgroups]. -+ -image::no-workgroup.png[] +Use the steps below when you want another workgroup — a second project, team, or environment. +== Create a workgroup -. Provide a name for the workgroup. +. Sign in to TigerGraph Savanna. +. From the dashboard, open btn:[Workgroups] and click btn:[Create Workgroup], or the image:plusbutton.png[width=50,height=50] button next to btn:[Workgroups]. +. On *Create Workgroup* (step 1 of 2), name the workgroup. + [NOTE] ==== -Choose a name that reflects the purpose of your project or initiative. +Name it after the project or team it serves, such as `fraud-detection` or `customer-360`. ==== +. Choose the cloud provider and region. +AWS is available. +Azure and GCP are marked *Coming Soon*. + -image::create-workgroup.png[width=1500] -. Choose the cloud provider and the region -+ -[NOTE] -==== -TigerGraph Savanna currently only operates on xref:savanna:resources:aws.adoc[]. We are actively working on expanding to xref:savanna:resources:gcp.adoc[] and xref:savanna:resources:azure.adoc[]. Visit each platform's reference page to learn more about the available regions. -==== - -. Finally, click on the btn:[Next] button to create the workgroup. - -== Next Step - -Now, learn xref:savanna:workgroup-workspace:workgroups/how2-workgroup-access.adoc[] or learn more about xref:savanna:workgroup-workspace:workspaces/workspace.adoc[Workspaces and Databases]. - -Return to the xref:savanna:workgroup-workspace:index.adoc[] page or xref:savanna:overview:index.adoc[Overview] page for a different topic. - -//// -xref:savanna:workgroup-workspace:workspaces/workspace.adoc[Workspaces and Databases, role=next-button] - -[.next-button] -xref:savanna:workgroup-workspace:workspaces/workspace.adoc[Link Text] +image::create-workgroup.png[] +. Click btn:[Next]. +That opens step 2, *Create Workspace*. -:next-button: pass:[xref:savanna:workgroup-workspace:workspaces/workspace.adoc[Next]] -{next-button} +== Where to go next -++++ -Next -++++ -//// \ No newline at end of file +* xref:savanna:workgroup-workspace:workspaces/how2-create-a-workspace.adoc[Create the first workspace] (step 2 of this wizard) +* xref:savanna:workgroup-workspace:workgroups/workgroup.adoc[About workgroups] diff --git a/modules/savanna/modules/workgroup-workspace/pages/workgroups/how2-workgroup-access.adoc b/modules/savanna/modules/workgroup-workspace/pages/workgroups/how2-workgroup-access.adoc index 953c5fff..2f914bbf 100644 --- a/modules/savanna/modules/workgroup-workspace/pages/workgroups/how2-workgroup-access.adoc +++ b/modules/savanna/modules/workgroup-workspace/pages/workgroups/how2-workgroup-access.adoc @@ -54,7 +54,7 @@ For more information about workspace admin role and workspace member role please ==== * For Organization Admins, Workgroup Admins, and Workspace Admins, the Superuser database role is automatically granted. This role provides extensive privileges and permissions within the graph database. * For Workspace Member, the Global Observer database role is automatically granted. This role provides minimum access to the graph database. -* For more information about the database roles and their capabilities, please refer to the TigerGraph documentation xref:gui:graphstudio:user-access-management.adoc#_role_and_graph_based_access_control[Role and Graph Based Access Control]. +* For more information about the database roles and their capabilities, please refer to the TigerGraph documentation https://www.tigergraph.com/docs/gui/4.3/graphstudio/user-access-management/#_role_and_graph_based_access_control[Role and Graph Based Access Control^]. ==== == Next steps diff --git a/modules/savanna/modules/workgroup-workspace/pages/workgroups/monitor-workspaces.adoc b/modules/savanna/modules/workgroup-workspace/pages/workgroups/monitor-workspaces.adoc index ba6b471c..0c097fce 100644 --- a/modules/savanna/modules/workgroup-workspace/pages/workgroups/monitor-workspaces.adoc +++ b/modules/savanna/modules/workgroup-workspace/pages/workgroups/monitor-workspaces.adoc @@ -26,6 +26,3 @@ image::workspace-monitor-tab.png[] Next, Learn how to xref:graph-development:load-data/index.adoc[Load Data] into TigerGraph Savanna. Return to the xref:savanna:workgroup-workspace:index.adoc[] page or xref:savanna:overview:index.adoc[Overview] page for a different topic. - - - diff --git a/modules/savanna/modules/workgroup-workspace/pages/workgroups/workgroup.adoc b/modules/savanna/modules/workgroup-workspace/pages/workgroups/workgroup.adoc index 5ed07d43..10a91e7f 100644 --- a/modules/savanna/modules/workgroup-workspace/pages/workgroups/workgroup.adoc +++ b/modules/savanna/modules/workgroup-workspace/pages/workgroups/workgroup.adoc @@ -1,18 +1,34 @@ -= Workgroup Overview += About workgroups +:experimental: -A workgroup represents a project or a logical group within TigerGraph Savanna. -It serves as a container that holds multiple xref:savanna:workgroup-workspace:workspaces/workspace.adoc[Workspaces and Databases] related to a specific use case, team, or application. - -//image::defineworkgroupvsworkspace2.png[] +A workgroup is the project boundary in TigerGraph Savanna. +It groups the workspaces and databases that belong to one team, use case, or application, and it is where you set access and network rules for that boundary. image::defineworkgroupvsworkspace.png[width=500] -[TIP] -Workgroups provide a way to organize and manage resources, access controls, and configurations for a particular project or initiative. +== What lives in a workgroup + +* Workspaces, which are the compute you attach to a database for loading, querying, and analytics. +* Databases, which hold the persistent graph data those workspaces connect to. +* Access and network settings that apply across the workspaces inside the workgroup. + +A workgroup does not run queries itself. +It organizes the resources that do. + +== Why use a workgroup + +Savanna creates your first workgroup (and a workspace inside it) when you register. +Add another workgroup when you want a second project, team, or environment, so access, regions, and resources stay separated. -== Next Step +Creating a workgroup is a two-step wizard: you name the workgroup, then you create its first workspace. -See xref:savanna:workgroup-workspace:workgroups/how2-create-a-workgroup.adoc[] to get started. +[NOTE] +==== +Name the workgroup after the project or team it serves, such as `fraud-detection` or `customer-360`, so it stays easy to find as you add more workspaces. +==== -Return to the xref:savanna:workgroup-workspace:index.adoc[] page or xref:savanna:overview:index.adoc[Overview] page for a different topic. +== Where to go next +* xref:savanna:workgroup-workspace:workgroups/how2-create-a-workgroup.adoc[Create a workgroup] +* xref:savanna:workgroup-workspace:workgroups/how2-workgroup-access.adoc[Manage workgroup access] +* xref:savanna:workgroup-workspace:workspaces/workspace.adoc[About workspaces] diff --git a/modules/savanna/modules/workgroup-workspace/pages/workgroups/workspace-logs.adoc b/modules/savanna/modules/workgroup-workspace/pages/workgroups/workspace-logs.adoc index 753c2a1a..83e94922 100644 --- a/modules/savanna/modules/workgroup-workspace/pages/workgroups/workspace-logs.adoc +++ b/modules/savanna/modules/workgroup-workspace/pages/workgroups/workspace-logs.adoc @@ -38,6 +38,3 @@ image::workspacelog.png[width="1600"] See xref:savanna:workgroup-workspace:workgroups/how2-create-a-workgroup.adoc[] to get started. Return to the xref:savanna:workgroup-workspace:index.adoc[] page or xref:savanna:overview:index.adoc[Overview] page for a different topic. - - - diff --git a/modules/savanna/modules/workgroup-workspace/pages/workspaces/connect-via-api.adoc b/modules/savanna/modules/workgroup-workspace/pages/workspaces/connect-via-api.adoc index bbd1451e..a163fb87 100644 --- a/modules/savanna/modules/workgroup-workspace/pages/workspaces/connect-via-api.adoc +++ b/modules/savanna/modules/workgroup-workspace/pages/workspaces/connect-via-api.adoc @@ -39,7 +39,7 @@ image::image-20260621-193747.png[] //image::Screenshot 2024-04-17 at 5.42.36 PM.png[width="500"] . Go to btn:[Edit GSQL Query] to write and install a new GSQL query. -For GSQL syntax, please refer to xref:gsql-ref:intro:index.adoc[]. +For GSQL syntax, please refer to https://www.tigergraph.com/docs/gsql-ref/4.3/intro/[GSQL Language Reference^]. . Click on an API to view its details, including the endpoint URL, HTTP method, input parameters, and expected output. + @@ -62,7 +62,7 @@ These code snippets provide ready-to-use code examples that you can integrate in === Connect via APIs Limitations The current btn:[Connect from API] code generated by TigerGraph Savanna does not support the database secret. -If you need to connect using the database secret, please refer to xref:tigergraph-server:user-access:user-credentials.adoc#_required_privilege[Required Privilege]. +If you need to connect using the database secret, please refer to https://www.tigergraph.com/docs/tigergraph-server/4.3/user-access/user-credentials/#_required_privilege[Required Privilege^]. == Next Steps diff --git a/modules/savanna/modules/workgroup-workspace/pages/workspaces/expansion-shrink.adoc b/modules/savanna/modules/workgroup-workspace/pages/workspaces/expansion-shrink.adoc index 570da360..9342e998 100644 --- a/modules/savanna/modules/workgroup-workspace/pages/workspaces/expansion-shrink.adoc +++ b/modules/savanna/modules/workgroup-workspace/pages/workspaces/expansion-shrink.adoc @@ -53,6 +53,3 @@ It is recommended to schedule the expansion or shrink during a time when minimal Next, set up a xref:savanna:workgroup-workspace:workspaces/schedule.adoc[Schedule] or learn more about how to xref:savanna:workgroup-workspace:workgroups/backup-and-restore.adoc[], xref:savanna:workgroup-workspace:workspaces/connect-via-api.adoc[], xref:savanna:workgroup-workspace:workgroups/monitor-workspaces.adoc[], or xref:savanna:workgroup-workspace:workgroups/workspace-logs.adoc[use the logging feature]. Return to the xref:savanna:workgroup-workspace:index.adoc[] page or xref:savanna:overview:index.adoc[Overview] page for a different topic. - - - diff --git a/modules/savanna/modules/workgroup-workspace/pages/workspaces/how2-create-a-workspace.adoc b/modules/savanna/modules/workgroup-workspace/pages/workspaces/how2-create-a-workspace.adoc index ab0fdb07..0dd037f2 100644 --- a/modules/savanna/modules/workgroup-workspace/pages/workspaces/how2-create-a-workspace.adoc +++ b/modules/savanna/modules/workgroup-workspace/pages/workspaces/how2-create-a-workspace.adoc @@ -1,81 +1,70 @@ -= How to Create a Workspace += Create a workspace :experimental: -To learn more about workspaces see xref:workspaces/workspace.adoc[]. -To create a workspace in TigerGraph Savanna follow the steps below: +A workspace is the compute you attach to a database. +You create one in two places: -== Create a Workspace +* *Step 2 of Create Workgroup* — after you click btn:[Next] on xref:savanna:workgroup-workspace:workgroups/how2-create-a-workgroup.adoc[Create a workgroup], you must create the first workspace for that workgroup. +* *Inside an existing workgroup* — open the workgroup and click btn:[Create Workspace] to add another workspace, for example a read-only workspace on the same database. -. Log in to your TigerGraph Savanna account. -+ -image::login.png[width=450] -+ -. From the dashboard, navigate to the btn:[Workgroups] section -Click on the btn:[ Create Workspace ] button. +If Savanna just finished sign-up provisioning, you already have a workspace. +Wait until its status is *active*, then go to xref:savanna:graph-development:design-schema/index.adoc[Design a schema]. + +== Create the workspace + +. If you are not already on *Create Workspace* (step 2), open btn:[Workgroups] and click btn:[Create Workspace]. + image::workspacecreate.png[] -+ -. Provide a name for the workspace. -+ -[NOTE] -==== -Choose a name that reflects the purpose of your workspace. -==== +. Name the workspace. + image::workspaceinfo.png[] . Select a TigerGraph workspace runtime. -+ -. Specify workspace size and advanced settings. +. Choose a size and any advanced settings you need now. +You can change size later. +See xref:savanna:workgroup-workspace:workspaces/workspace-size.adoc[Choose a workspace size] and xref:savanna:workgroup-workspace:workspaces/settings.adoc[Workspace settings]. + image::workspaceDetails.png[] -+ -. For supported workspace sizes, please go to the xref:savanna:workgroup-workspace:workspaces/workspace-size.adoc[] page. - -. For advanced settings please refer to xref:savanna:workgroup-workspace:workspaces/settings.adoc[] page. -. Specify database name or attach to an existing database. +. Create a new database, or attach this workspace to an existing one. +A new database makes this workspace read-write. +Attaching to an existing database makes it read-only. +See xref:savanna:workgroup-workspace:workspaces/readwrite-readonly.adoc[Read-write and read-only]. -.. This allows you to create Read-Write (RW) workspace or Read-Only (RO) workspace. -For more details, please refer to xref:savanna:workgroup-workspace:workspaces/readwrite-readonly.adoc[]. - -. Specify Solutions for your workspace, for more details please visit xref:savanna:integrations:solutions.adoc[] page. +. Optionally add a xref:savanna:integrations:solutions.adoc[solution] or xref:savanna:integrations:add-ons.adoc[add-ons]. +You can do this later from workspace settings. + image::solution-add-on.png[] - -. Specify Add-ons to your workspace, for more details please visit xref:savanna:integrations:add-ons.adoc[] page. + image::Add-onsimage.png[] -. Click on the btn:[ Create ] button to create the workspace. +. Click btn:[Create]. +If this is step 2 of a new workgroup, that finishes both the workgroup and the workspace. + [NOTE] ==== -Currently, only one Read-Write workspace can be created for any given database. -This means that multiple simultaneous Read-Write workspaces cannot be created, potentially limiting certain collaborative or concurrent development scenarios. +A database can have only one read-write workspace. ==== + -[IMPORTANT] +[CAUTION] ==== -Users cannot re-create the Read-Write workspace once it has been terminated. +If you terminate the read-write workspace, you cannot create another one for that database. ==== -. The workspace will then start to build. -This progress can be monitored on the btn:[General Tab]. +. The workspace starts to build. +Watch progress on the btn:[General] tab. + image::workspace-general-tab.png[] -. Once built you can view details about your workspace on the workspace tab. -And you can view information about your database on the database tab. +. When it is ready, use the workspace tab for compute details and the database tab for the attached data. + image::workspace-info-tab.png[] + image::workspace-database-tab.png[] -== Next Steps - -Now, that you have a workspace created see xref:savanna:workgroup-workspace:workspaces/settings.adoc[] or learn more about xref:savanna:workgroup-workspace:workspaces/readwrite-readonly.adoc[]. +== Where to go next -Return to the xref:savanna:workgroup-workspace:index.adoc[] page or xref:savanna:overview:index.adoc[Overview] page for a different topic. +* xref:savanna:graph-development:design-schema/index.adoc[Design a schema] on the new workspace +* xref:savanna:workgroup-workspace:workspaces/settings.adoc[Workspace settings] diff --git a/modules/savanna/modules/workgroup-workspace/pages/workspaces/readwrite-readonly.adoc b/modules/savanna/modules/workgroup-workspace/pages/workspaces/readwrite-readonly.adoc index c7e33d7f..30723652 100644 --- a/modules/savanna/modules/workgroup-workspace/pages/workspaces/readwrite-readonly.adoc +++ b/modules/savanna/modules/workgroup-workspace/pages/workspaces/readwrite-readonly.adoc @@ -63,9 +63,10 @@ You can manually sync up the data with Read-Write(RW) workspace when needed. //[Placeholder for update read-only workspace] [NOTE] +==== Updating a Read-Only (RO) workspace is an offline operation. - If there are any other operations in progress on the RO workspace, they are likely to be affected during the update process. +==== [TIP] ==== @@ -77,5 +78,3 @@ It is recommended to schedule the update during a time when minimal or no operat Next, about xref:savanna:workgroup-workspace:workspaces/workspace-size.adoc[Workspace Sizes] or learn how to xref:savanna:workgroup-workspace:workspaces/expansion-shrink.adoc[Expand and Shrink] a workspace. Return to the xref:savanna:workgroup-workspace:index.adoc[] page or xref:savanna:overview:index.adoc[Overview] page for a different topic. - - diff --git a/modules/savanna/modules/workgroup-workspace/pages/workspaces/settings.adoc b/modules/savanna/modules/workgroup-workspace/pages/workspaces/settings.adoc index a0d59326..212d62b2 100644 --- a/modules/savanna/modules/workgroup-workspace/pages/workspaces/settings.adoc +++ b/modules/savanna/modules/workgroup-workspace/pages/workspaces/settings.adoc @@ -169,6 +169,3 @@ Updating Graph Admin settings might result in the restart of certain TigerGraph Next, learn about xref:savanna:workgroup-workspace:workspaces/readwrite-readonly.adoc[] or learn more about xref:savanna:workgroup-workspace:workspaces/workspace-size.adoc[]. Return to the xref:savanna:workgroup-workspace:index.adoc[] page or xref:savanna:overview:index.adoc[Overview] page for a different topic. - - - diff --git a/modules/savanna/modules/workgroup-workspace/pages/workspaces/workspace-size.adoc b/modules/savanna/modules/workgroup-workspace/pages/workspaces/workspace-size.adoc index 8c01a78e..ce7595f0 100644 --- a/modules/savanna/modules/workgroup-workspace/pages/workspaces/workspace-size.adoc +++ b/modules/savanna/modules/workgroup-workspace/pages/workspaces/workspace-size.adoc @@ -63,5 +63,3 @@ See xref:savanna:workgroup-workspace:workspaces/expansion-shrink.adoc[] to learn return to the xref:savanna:workgroup-workspace:index.adoc[] page or xref:savanna:overview:index.adoc[Overview] page for a different topic. Or visit xref:savanna:overview:pricing.adoc[] and xref:savanna:overview:cost-estimation.adoc[] for detailed information on the costs associated with different workspace sizes. - - diff --git a/modules/savanna/modules/workgroup-workspace/pages/workspaces/workspace.adoc b/modules/savanna/modules/workgroup-workspace/pages/workspaces/workspace.adoc index 02b319ba..f0dcd25d 100644 --- a/modules/savanna/modules/workgroup-workspace/pages/workspaces/workspace.adoc +++ b/modules/savanna/modules/workgroup-workspace/pages/workspaces/workspace.adoc @@ -4,13 +4,13 @@ A *Workspace* is a compute unit within a TigerGraph database. It is where the graph processing and analytics take place. TigerGraph Savanna supports two types of workspaces: read-write workspaces and read-only workspaces. -** *Read-Write Workspaces (RW)*: These workspaces allow read and write operations on the graph data. +* *Read-Write Workspaces (RW)*: These workspaces allow read and write operations on the graph data. They are typically used for data ingestion, data updates, and running queries that modify the graph structure or properties. -** *Read-Only Workspaces (RO)*: These workspaces are optimized for read-intensive operations. +* *Read-Only Workspaces (RO)*: These workspaces are optimized for read-intensive operations. They are used for executing queries and analytics on the graph data without modifying it. Read-only workspaces provide improved performance and scalability for read operations. -+ + [TIP] ==== The separation of compute and storage in workspaces allows for optimized performance and resource allocation, while the databases ensure the persistence and accessibility of the graph data. @@ -19,7 +19,7 @@ The separation of compute and storage in workspaces allows for optimized perform * The *database* in TigerGraph Savanna refers to the actual data stored within the platform. It is separate from the workspaces and can be associated with one or more workspaces within a workgroup. It holds the persistent data that is loaded into TigerGraph and is accessible for graph analytics and visualization. -+ + [NOTE] ==== We only support a maximum of one Read-Write workspace to connect to a database. diff --git a/package.json b/package.json index 83d6c805..3203802d 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,8 @@ "main": "index.js", "scripts": { "build": "antora generate --fetch antora-playbook.yml", - "dev": "gulp", + "build:local": "antora generate antora-playbook.local.yml", + "dev": "PLAYBOOK=antora-playbook.local.yml gulp", "serve": "http-server build/site -c-1" }, "author": "", @@ -13,9 +14,11 @@ "dependencies": { "@antora/cli": "^3.1.1", "@antora/site-generator-default": "^3.1.1", + "@asciidoctor/tabs": "^1.0.0-beta.6", "gulp": "^4.0.2", "gulp-cli": "^2.3.0", "gulp-connect": "^5.7.0", - "js-yaml": "^4.1.0" + "js-yaml": "^4.1.0", + "node-html-markdown": "^1.3.0" } } diff --git a/yarn.lock b/yarn.lock index 61350458..e41334ce 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4,7 +4,7 @@ "@antora/asciidoc-loader@3.1.10": version "3.1.10" - resolved "https://registry.yarnpkg.com/@antora/asciidoc-loader/-/asciidoc-loader-3.1.10.tgz#82d0a5ae11d5a56aa62645c5fb9ecbbb35bb8e29" + resolved "https://registry.npmjs.org/@antora/asciidoc-loader/-/asciidoc-loader-3.1.10.tgz" integrity sha512-np0JkOV37CK7V4eDZUZXf4fQuCKYW3Alxl8FlyzBevXi2Ujv29O82JLbHbv1cyTsvGkGNNB+gzJIx9XBsQ7+Nw== dependencies: "@antora/logger" "3.1.10" @@ -13,7 +13,7 @@ "@antora/cli@^3.1.1": version "3.1.10" - resolved "https://registry.yarnpkg.com/@antora/cli/-/cli-3.1.10.tgz#06b7661e82ac7906fec6d49530bb381c9d33416f" + resolved "https://registry.npmjs.org/@antora/cli/-/cli-3.1.10.tgz" integrity sha512-gp8u9aVM0w1DtWSsB5PwvEfFYKrooPENLhN58RAfdgTrcsTsWw+CDysFZPgEaHB0Y1ZbanR82ZH/f6JVKGcZfQ== dependencies: "@antora/logger" "3.1.10" @@ -23,7 +23,7 @@ "@antora/content-aggregator@3.1.10": version "3.1.10" - resolved "https://registry.yarnpkg.com/@antora/content-aggregator/-/content-aggregator-3.1.10.tgz#7004d1c05c0a402446f698a4b5d2533c70ec6981" + resolved "https://registry.npmjs.org/@antora/content-aggregator/-/content-aggregator-3.1.10.tgz" integrity sha512-OT6ZcCA7LrtNfrAZUr3hFh+Z/1isKpsfnqFjCDC66NEMqIyzJO99jq0CM66rYlYhyX7mb5BwEua8lHcwpOXNow== dependencies: "@antora/expand-path-helper" "~3.0" @@ -44,7 +44,7 @@ "@antora/content-classifier@3.1.10": version "3.1.10" - resolved "https://registry.yarnpkg.com/@antora/content-classifier/-/content-classifier-3.1.10.tgz#ebb809a78ee3ec3ff6bdd28ae70e30b5c754c1ee" + resolved "https://registry.npmjs.org/@antora/content-classifier/-/content-classifier-3.1.10.tgz" integrity sha512-3JJl4IIiTX00v/MirK603NoqIcHjGYAaRWt3Q4U03tI1Fv2Aho/ypO3FE45069jFf0Dx2uDJfp5kapb9gaIjdQ== dependencies: "@antora/asciidoc-loader" "3.1.10" @@ -54,19 +54,19 @@ "@antora/document-converter@3.1.10": version "3.1.10" - resolved "https://registry.yarnpkg.com/@antora/document-converter/-/document-converter-3.1.10.tgz#af176261077894c22439705c6e4e11f46acf9029" + resolved "https://registry.npmjs.org/@antora/document-converter/-/document-converter-3.1.10.tgz" integrity sha512-qi9ctgcKal8tZtWflVo66w+4zCJoBmUKRV+eA9aRRR09KDdU9r514vu1adWNgniPppISr90zD13V5l2JUy/2CQ== dependencies: "@antora/asciidoc-loader" "3.1.10" "@antora/expand-path-helper@~3.0": version "3.0.0" - resolved "https://registry.yarnpkg.com/@antora/expand-path-helper/-/expand-path-helper-3.0.0.tgz#5a38a35d04e5a60bfea686540155a1a922dc3d95" + resolved "https://registry.npmjs.org/@antora/expand-path-helper/-/expand-path-helper-3.0.0.tgz" integrity sha512-7PdEIhk97v85/CSm3HynCsX14TR6oIVz1s233nNLsiWubE8tTnpPt4sNRJR+hpmIZ6Bx9c6QDp3XIoiyu/WYYA== "@antora/file-publisher@3.1.10": version "3.1.10" - resolved "https://registry.yarnpkg.com/@antora/file-publisher/-/file-publisher-3.1.10.tgz#a8b6be969fd0619a01d2b0f7a0b0305587087984" + resolved "https://registry.npmjs.org/@antora/file-publisher/-/file-publisher-3.1.10.tgz" integrity sha512-DPR/0d1P+kr3qV4T0Gh81POEO/aCmNWIp/oLUYAhr0HHOcFzgpTUUoLStgcYynZPFRIB7EYKSab+oYSCK17DGA== dependencies: "@antora/expand-path-helper" "~3.0" @@ -76,7 +76,7 @@ "@antora/logger@3.1.10": version "3.1.10" - resolved "https://registry.yarnpkg.com/@antora/logger/-/logger-3.1.10.tgz#c50ba7f76cddcd2d518586c284598191b68c2ded" + resolved "https://registry.npmjs.org/@antora/logger/-/logger-3.1.10.tgz" integrity sha512-WSuIxEP2tVrhWtTj/sIrwBDjpi4ldB/1Kpiu4PXmY4/qeWP8thW6u8nXdwdDcWss5zqkZWjourvWKwVq7y8Wjg== dependencies: "@antora/expand-path-helper" "~3.0" @@ -86,14 +86,14 @@ "@antora/navigation-builder@3.1.10": version "3.1.10" - resolved "https://registry.yarnpkg.com/@antora/navigation-builder/-/navigation-builder-3.1.10.tgz#547986b889b59ee566a6747aa6577cfd1dbd89de" + resolved "https://registry.npmjs.org/@antora/navigation-builder/-/navigation-builder-3.1.10.tgz" integrity sha512-aLMK49nYsSB3mEZbLkmUXDAUYmscv2AFWu+5c3eqVGkQ6Wgyd79WQ6Bz3/TN9YqkzGL+PqGs0G39F0VQzD23Hw== dependencies: "@antora/asciidoc-loader" "3.1.10" "@antora/page-composer@3.1.10": version "3.1.10" - resolved "https://registry.yarnpkg.com/@antora/page-composer/-/page-composer-3.1.10.tgz#3f962d11dd41a3250cf391b968955ee3e3b588d3" + resolved "https://registry.npmjs.org/@antora/page-composer/-/page-composer-3.1.10.tgz" integrity sha512-JoEg8J8HVsnPmAgUrYSGzf0C8rQefXyCi/18ucy0utyfUvlJNsZvUbGUPx62Het9p0JP0FkAz2MTLyDlNdArVg== dependencies: "@antora/logger" "3.1.10" @@ -102,7 +102,7 @@ "@antora/playbook-builder@3.1.10": version "3.1.10" - resolved "https://registry.yarnpkg.com/@antora/playbook-builder/-/playbook-builder-3.1.10.tgz#488f92b0ee7fe4b4f1cb02bf5f1884ecb664a953" + resolved "https://registry.npmjs.org/@antora/playbook-builder/-/playbook-builder-3.1.10.tgz" integrity sha512-UB8UmRYfkKgActTUlotdVS4FKGjaZgTnSXE7Fns1xb3/3HRanWvI+Yze1OmCkGC33cTpoQFnSYp7ySEH8LaiBw== dependencies: "@iarna/toml" "~2.2" @@ -112,21 +112,21 @@ "@antora/redirect-producer@3.1.10": version "3.1.10" - resolved "https://registry.yarnpkg.com/@antora/redirect-producer/-/redirect-producer-3.1.10.tgz#5f2d96ce4d10b879a0c678dbbd79d4ec4f58256e" + resolved "https://registry.npmjs.org/@antora/redirect-producer/-/redirect-producer-3.1.10.tgz" integrity sha512-IbWJGh6LmsxJQ821h0B9JfooofFZBgFLZxsbp/IoTLkBFGLFAY5tDRvB6rvubfNLRoSjM8VjEUXGqVLlwZOb+g== dependencies: vinyl "~3.0" "@antora/site-generator-default@^3.1.1": version "3.1.10" - resolved "https://registry.yarnpkg.com/@antora/site-generator-default/-/site-generator-default-3.1.10.tgz#b42a227c321822d7d71d6f4976d1619b1d939903" + resolved "https://registry.npmjs.org/@antora/site-generator-default/-/site-generator-default-3.1.10.tgz" integrity sha512-dMhjbklthysj3espwYNkTkADm2Z3EbWThq9gJv/ZuSXGZSXVSwt8b3mBpCTwxOeAKIldnj3fc1pzQxei/7PC2w== dependencies: "@antora/site-generator" "3.1.10" "@antora/site-generator@3.1.10": version "3.1.10" - resolved "https://registry.yarnpkg.com/@antora/site-generator/-/site-generator-3.1.10.tgz#a1322d9d1ecdb2ad85d792618c9a46ba995f7fa5" + resolved "https://registry.npmjs.org/@antora/site-generator/-/site-generator-3.1.10.tgz" integrity sha512-NCULYtwUjIyr5FGCymhfG/zDVUmZ6pfmCPorka8mAzo4/GDx1T7bgaRL9rEIyf2AMqcm7apQiAz03mpU4kucsw== dependencies: "@antora/asciidoc-loader" "3.1.10" @@ -146,7 +146,7 @@ "@antora/site-mapper@3.1.10": version "3.1.10" - resolved "https://registry.yarnpkg.com/@antora/site-mapper/-/site-mapper-3.1.10.tgz#49755a914842804376c47f3876cbaa030ed618f6" + resolved "https://registry.npmjs.org/@antora/site-mapper/-/site-mapper-3.1.10.tgz" integrity sha512-KY1j/y0uxC2Y7RAo4r4yKv9cgFm8aZoRylZXEODJnwj3tffbZ2ZdRzSWHp6fN0QX/Algrr9JNd9CWrjcj2f3Zw== dependencies: "@antora/content-classifier" "3.1.10" @@ -154,14 +154,14 @@ "@antora/site-publisher@3.1.10": version "3.1.10" - resolved "https://registry.yarnpkg.com/@antora/site-publisher/-/site-publisher-3.1.10.tgz#f41fa2248de20b37d49b539ff591701a9e11620b" + resolved "https://registry.npmjs.org/@antora/site-publisher/-/site-publisher-3.1.10.tgz" integrity sha512-G4xcUWvgth8oeEQwiu9U1cE0miQtYHwKHOobUbDBt2Y6LlC5H31zQQmAyvMwTsGRlvYRgLVtG6j9d6JBwQ6w9Q== dependencies: "@antora/file-publisher" "3.1.10" "@antora/ui-loader@3.1.10": version "3.1.10" - resolved "https://registry.yarnpkg.com/@antora/ui-loader/-/ui-loader-3.1.10.tgz#30c56a5a5d9ffd2a52eef11511b88aff12f67e26" + resolved "https://registry.npmjs.org/@antora/ui-loader/-/ui-loader-3.1.10.tgz" integrity sha512-H1f5wI5a5HjLuE/Wexvc8NZy8w83Bhqjka7t1DbwOOqP+LyxFGLx/QbBVKdTtgFNDHVMtNBlplQq0ixeoTSh0A== dependencies: "@antora/expand-path-helper" "~3.0" @@ -178,40 +178,45 @@ "@antora/user-require-helper@~3.0": version "3.0.0" - resolved "https://registry.yarnpkg.com/@antora/user-require-helper/-/user-require-helper-3.0.0.tgz#79a9a506cf4643a6f24b2ee408d86daa7916676c" + resolved "https://registry.npmjs.org/@antora/user-require-helper/-/user-require-helper-3.0.0.tgz" integrity sha512-KIXb8WYhnrnwH7Jj21l1w+et9k5GvcgcqvLOwxqWLEd0uVZOiMFdqFjqbVm3M+zcrs1JXWMeh2LLvxBbQs3q/Q== dependencies: "@antora/expand-path-helper" "~3.0" "@asciidoctor/core@~2.2": version "2.2.8" - resolved "https://registry.yarnpkg.com/@asciidoctor/core/-/core-2.2.8.tgz#da1e3a1264e9d27cd9767bd2df15fea14a443b78" + resolved "https://registry.npmjs.org/@asciidoctor/core/-/core-2.2.8.tgz" integrity sha512-oozXk7ZO1RAd/KLFLkKOhqTcG4GO3CV44WwOFg2gMcCsqCUTarvMT7xERIoWW2WurKbB0/ce+98r01p8xPOlBw== dependencies: asciidoctor-opal-runtime "0.3.3" unxhr "1.0.1" +"@asciidoctor/tabs@^1.0.0-beta.6": + version "1.0.0-beta.6" + resolved "https://registry.npmjs.org/@asciidoctor/tabs/-/tabs-1.0.0-beta.6.tgz" + integrity sha512-gGZnW7UfRXnbiyKNd9PpGKtSuD8+DsqaaTSbQ1dHVkZ76NaolLhdQg8RW6/xqN3pX1vWZEcF4e81+Oe9rNRWxg== + "@iarna/toml@~2.2": version "2.2.5" - resolved "https://registry.yarnpkg.com/@iarna/toml/-/toml-2.2.5.tgz#b32366c89b43c6f8cefbdefac778b9c828e3ba8c" + resolved "https://registry.npmjs.org/@iarna/toml/-/toml-2.2.5.tgz" integrity sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg== "@nodelib/fs.scandir@2.1.5": version "2.1.5" - resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz" integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== dependencies: "@nodelib/fs.stat" "2.0.5" run-parallel "^1.1.9" -"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": +"@nodelib/fs.stat@^2.0.2", "@nodelib/fs.stat@2.0.5": version "2.0.5" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== "@nodelib/fs.walk@^1.2.3": version "1.2.8" - resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz" integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== dependencies: "@nodelib/fs.scandir" "2.1.5" @@ -219,14 +224,14 @@ abort-controller@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" + resolved "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz" integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg== dependencies: event-target-shim "^5.0.0" accepts@~1.3.4: version "1.3.8" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" + resolved "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz" integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== dependencies: mime-types "~2.1.34" @@ -234,36 +239,36 @@ accepts@~1.3.4: ansi-colors@^1.0.1: version "1.1.0" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-1.1.0.tgz#6374b4dd5d4718ff3ce27a671a3b1cad077132a9" + resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz" integrity sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA== dependencies: ansi-wrap "^0.1.0" ansi-colors@^2.0.5: version "2.0.5" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-2.0.5.tgz#5da37825fef3e75f3bda47f760d64bfd10e15e10" + resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-2.0.5.tgz" integrity sha512-yAdfUZ+c2wetVNIFsNRn44THW+Lty6S5TwMpUfLA/UaGhiXbBv/F8E60/1hMLd0cnF/CDoWH8vzVaI5bAcHCjw== ansi-gray@^0.1.1: version "0.1.1" - resolved "https://registry.yarnpkg.com/ansi-gray/-/ansi-gray-0.1.1.tgz#2962cf54ec9792c48510a3deb524436861ef7251" + resolved "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz" integrity sha512-HrgGIZUl8h2EHuZaU9hTR/cU5nhKxpVE1V6kdGsQ8e4zirElJ5fvtfc8N7Q1oq1aatO275i8pUFUCpNWCAnVWw== dependencies: ansi-wrap "0.1.0" ansi-regex@^2.0.0: version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz" integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA== -ansi-wrap@0.1.0, ansi-wrap@^0.1.0: +ansi-wrap@^0.1.0, ansi-wrap@0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/ansi-wrap/-/ansi-wrap-0.1.0.tgz#a82250ddb0015e9a27ca82e82ea603bbfa45efaf" + resolved "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz" integrity sha512-ZyznvL8k/FZeQHr2T6LzcJ/+vBApDnMNZvfVFy3At0knswWd6rJ3/0Hhmpu8oqa6C92npmozs890sX9Dl6q+Qw== anymatch@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" + resolved "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz" integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== dependencies: micromatch "^3.1.4" @@ -271,58 +276,58 @@ anymatch@^2.0.0: append-buffer@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/append-buffer/-/append-buffer-1.0.2.tgz#d8220cf466081525efea50614f3de6514dfa58f1" + resolved "https://registry.npmjs.org/append-buffer/-/append-buffer-1.0.2.tgz" integrity sha512-WLbYiXzD3y/ATLZFufV/rZvWdZOs+Z/+5v1rBZ463Jn398pa6kcde27cvozYnBoxXblGZTFfoPpsaEw0orU5BA== dependencies: buffer-equal "^1.0.0" archy@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40" + resolved "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz" integrity sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw== argparse@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== arr-diff@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" + resolved "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz" integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== arr-filter@^1.1.1: version "1.1.2" - resolved "https://registry.yarnpkg.com/arr-filter/-/arr-filter-1.1.2.tgz#43fdddd091e8ef11aa4c45d9cdc18e2dff1711ee" + resolved "https://registry.npmjs.org/arr-filter/-/arr-filter-1.1.2.tgz" integrity sha512-A2BETWCqhsecSvCkWAeVBFLH6sXEUGASuzkpjL3GR1SlL/PWL6M3J8EAAld2Uubmh39tvkJTqC9LeLHCUKmFXA== dependencies: make-iterator "^1.0.0" arr-flatten@^1.0.1, arr-flatten@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" + resolved "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz" integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== arr-map@^2.0.0, arr-map@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/arr-map/-/arr-map-2.0.2.tgz#3a77345ffc1cf35e2a91825601f9e58f2e24cac4" + resolved "https://registry.npmjs.org/arr-map/-/arr-map-2.0.2.tgz" integrity sha512-tVqVTHt+Q5Xb09qRkbu+DidW1yYzz5izWS2Xm2yFm7qJnmUfz4HPzNxbHkdRJbz2lrqI7S+z17xNYdFcBBO8Hw== dependencies: make-iterator "^1.0.0" arr-union@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" + resolved "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz" integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== array-each@^1.0.0, array-each@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/array-each/-/array-each-1.0.1.tgz#a794af0c05ab1752846ee753a1f211a05ba0c44f" + resolved "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz" integrity sha512-zHjL5SZa68hkKHBFBK6DJCTtr9sfTCPCaph/L7tMSLcTFgy+zX7E+6q5UArbtOtMBCtxdICpfTCspRse+ywyXA== array-initial@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/array-initial/-/array-initial-1.1.0.tgz#2fa74b26739371c3947bd7a7adc73be334b3d795" + resolved "https://registry.npmjs.org/array-initial/-/array-initial-1.1.0.tgz" integrity sha512-BC4Yl89vneCYfpLrs5JU2aAu9/a+xWbeKhvISg9PT7eWFB9UlRvI+rKEtk6mgxWr3dSkk9gQ8hCrdqt06NXPdw== dependencies: array-slice "^1.0.0" @@ -330,19 +335,19 @@ array-initial@^1.0.0: array-last@^1.1.1: version "1.3.0" - resolved "https://registry.yarnpkg.com/array-last/-/array-last-1.3.0.tgz#7aa77073fec565ddab2493f5f88185f404a9d336" + resolved "https://registry.npmjs.org/array-last/-/array-last-1.3.0.tgz" integrity sha512-eOCut5rXlI6aCOS7Z7kCplKRKyiFQ6dHFBem4PwlwKeNFk2/XxTrhRh5T9PyaEWGy/NHTZWbY+nsZlNFJu9rYg== dependencies: is-number "^4.0.0" array-slice@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/array-slice/-/array-slice-1.1.0.tgz#e368ea15f89bc7069f7ffb89aec3a6c7d4ac22d4" + resolved "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz" integrity sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w== array-sort@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/array-sort/-/array-sort-1.0.0.tgz#e4c05356453f56f53512a7d1d6123f2c54c0a88a" + resolved "https://registry.npmjs.org/array-sort/-/array-sort-1.0.0.tgz" integrity sha512-ihLeJkonmdiAsD7vpgN3CRcx2J2S0TiYW+IS/5zHBI7mKUq3ySvBdzzBfD236ubDBQFiiyG3SWCPc+msQ9KoYg== dependencies: default-compare "^1.0.0" @@ -351,12 +356,12 @@ array-sort@^1.0.0: array-unique@^0.3.2: version "0.3.2" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" + resolved "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz" integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== asciidoctor-opal-runtime@0.3.3: version "0.3.3" - resolved "https://registry.yarnpkg.com/asciidoctor-opal-runtime/-/asciidoctor-opal-runtime-0.3.3.tgz#2667635f858d3eb3fdfcf6795cf68138e2040174" + resolved "https://registry.npmjs.org/asciidoctor-opal-runtime/-/asciidoctor-opal-runtime-0.3.3.tgz" integrity sha512-/CEVNiOia8E5BMO9FLooo+Kv18K4+4JBFRJp8vUy/N5dMRAg+fRNV4HA+o6aoSC79jVU/aT5XvUpxSxSsTS8FQ== dependencies: glob "7.1.3" @@ -364,12 +369,12 @@ asciidoctor-opal-runtime@0.3.3: assign-symbols@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" + resolved "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz" integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== async-done@^1.2.0, async-done@^1.2.2: version "1.3.2" - resolved "https://registry.yarnpkg.com/async-done/-/async-done-1.3.2.tgz#5e15aa729962a4b07414f528a88cdf18e0b290a2" + resolved "https://registry.npmjs.org/async-done/-/async-done-1.3.2.tgz" integrity sha512-uYkTP8dw2og1tu1nmza1n1CMW0qb8gWWlwqMmLb7MhBVs4BXrFziT6HXUd+/RlRA/i4H9AkofYloUbs1fwMqlw== dependencies: end-of-stream "^1.1.0" @@ -379,39 +384,39 @@ async-done@^1.2.0, async-done@^1.2.2: async-each@^1.0.1: version "1.0.6" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.6.tgz#52f1d9403818c179b7561e11a5d1b77eb2160e77" + resolved "https://registry.npmjs.org/async-each/-/async-each-1.0.6.tgz" integrity sha512-c646jH1avxr+aVpndVMeAfYw7wAa6idufrlN3LPA4PmKS0QEGp6PIC9nwz0WQkkvBGAMEki3pFdtxaF39J9vvg== async-lock@^1.4.1: version "1.4.1" - resolved "https://registry.yarnpkg.com/async-lock/-/async-lock-1.4.1.tgz#56b8718915a9b68b10fce2f2a9a3dddf765ef53f" + resolved "https://registry.npmjs.org/async-lock/-/async-lock-1.4.1.tgz" integrity sha512-Az2ZTpuytrtqENulXwO3GGv1Bztugx6TT37NIo7imr/Qo0gsYiGtSdBa2B6fsXhTpVZDNfu1Qn3pk531e3q+nQ== async-settle@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/async-settle/-/async-settle-1.0.0.tgz#1d0a914bb02575bec8a8f3a74e5080f72b2c0c6b" + resolved "https://registry.npmjs.org/async-settle/-/async-settle-1.0.0.tgz" integrity sha512-VPXfB4Vk49z1LHHodrEQ6Xf7W4gg1w0dAPROHngx7qgDjqmIQ+fXmwgGXTW/ITLai0YLSvWepJOP9EVpMnEAcw== dependencies: async-done "^1.2.2" atob@^2.1.2: version "2.1.2" - resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" + resolved "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz" integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== atomic-sleep@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/atomic-sleep/-/atomic-sleep-1.0.0.tgz#eb85b77a601fc932cfe432c5acd364a9e2c9075b" + resolved "https://registry.npmjs.org/atomic-sleep/-/atomic-sleep-1.0.0.tgz" integrity sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ== b4a@^1.6.4: version "1.6.7" - resolved "https://registry.yarnpkg.com/b4a/-/b4a-1.6.7.tgz#a99587d4ebbfbd5a6e3b21bdb5d5fa385767abe4" + resolved "https://registry.npmjs.org/b4a/-/b4a-1.6.7.tgz" integrity sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg== bach@^1.0.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/bach/-/bach-1.2.0.tgz#4b3ce96bf27134f79a1b414a51c14e34c3bd9880" + resolved "https://registry.npmjs.org/bach/-/bach-1.2.0.tgz" integrity sha512-bZOOfCb3gXBXbTFXq3OZtGR88LwGeJvzu6szttaIzymOTS4ZttBNOWSv7aLZja2EMycKtRYV0Oa8SNKH/zkxvg== dependencies: arr-filter "^1.1.1" @@ -426,22 +431,17 @@ bach@^1.0.0: balanced-match@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== bare-events@^2.2.0: version "2.5.4" - resolved "https://registry.yarnpkg.com/bare-events/-/bare-events-2.5.4.tgz#16143d435e1ed9eafd1ab85f12b89b3357a41745" + resolved "https://registry.npmjs.org/bare-events/-/bare-events-2.5.4.tgz" integrity sha512-+gFfDkR8pj4/TrWCGUGWmJIkBwuxPS5F+a5yWjOHQt2hHvNZd5YLzadjmDUtFmMM4y429bnKLa8bYBMHcYdnQA== -base64-js@^1.3.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" - integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== - base@^0.11.1: version "0.11.2" - resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" + resolved "https://registry.npmjs.org/base/-/base-0.11.2.tgz" integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== dependencies: cache-base "^1.0.1" @@ -452,26 +452,31 @@ base@^0.11.1: mixin-deep "^1.2.0" pascalcase "^0.1.1" +base64-js@^1.3.1: + version "1.5.1" + resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== + batch@0.6.1: version "0.6.1" - resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" + resolved "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz" integrity sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw== binary-extensions@^1.0.0: version "1.13.1" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" + resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz" integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== bindings@^1.5.0: version "1.5.0" - resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" + resolved "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz" integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== dependencies: file-uri-to-path "1.0.0" body@^5.1.0: version "5.1.0" - resolved "https://registry.yarnpkg.com/body/-/body-5.1.0.tgz#e4ba0ce410a46936323367609ecb4e6553125069" + resolved "https://registry.npmjs.org/body/-/body-5.1.0.tgz" integrity sha512-chUsBxGRtuElD6fmw1gHLpvnKdVLK302peeFa9ZqAEk8TyzZ3fygLyUEDDPTJvL9+Bor0dIwn6ePOsRM2y0zQQ== dependencies: continuable-cache "^0.3.1" @@ -479,17 +484,38 @@ body@^5.1.0: raw-body "~1.1.0" safe-json-parse "~1.0.1" +boolbase@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz" + integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww== + brace-expansion@^1.1.7: version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== dependencies: balanced-match "^1.0.0" concat-map "0.0.1" -braces@^2.3.1, braces@^2.3.2: +braces@^2.3.1: version "2.3.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" + resolved "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz" + integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== + dependencies: + arr-flatten "^1.1.0" + array-unique "^0.3.2" + extend-shallow "^2.0.1" + fill-range "^4.0.0" + isobject "^3.0.1" + repeat-element "^1.1.2" + snapdragon "^0.8.1" + snapdragon-node "^2.0.1" + split-string "^3.0.2" + to-regex "^3.0.1" + +braces@^2.3.2: + version "2.3.2" + resolved "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz" integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== dependencies: arr-flatten "^1.1.0" @@ -505,29 +531,29 @@ braces@^2.3.1, braces@^2.3.2: braces@^3.0.3, braces@~3.0: version "3.0.3" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" + resolved "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz" integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== dependencies: fill-range "^7.1.1" buffer-crc32@~0.2.3: version "0.2.13" - resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" + resolved "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz" integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== buffer-equal@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-1.0.1.tgz#2f7651be5b1b3f057fcd6e7ee16cf34767077d90" + resolved "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.1.tgz" integrity sha512-QoV3ptgEaQpvVwbXdSO39iqPQTCxSF7A5U99AxbHYqUdCizL/lH2Z0A2y6nbZucxMEOtNyZfG2s6gsVugGpKkg== buffer-from@^1.0.0: version "1.1.2" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" + resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== buffer@^6.0.3: version "6.0.3" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" + resolved "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz" integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA== dependencies: base64-js "^1.3.1" @@ -535,12 +561,12 @@ buffer@^6.0.3: bytes@1: version "1.0.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-1.0.0.tgz#3569ede8ba34315fab99c3e92cb04c7220de1fa8" + resolved "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz" integrity sha512-/x68VkHLeTl3/Ll8IvxdwzhrT+IyKc52e/oyHhA2RwqPqswSnjVbSddfPRwAsJtbilMAPSRWwAlpxdYsSWOTKQ== cache-base@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" + resolved "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz" integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== dependencies: collection-visit "^1.0.0" @@ -555,14 +581,14 @@ cache-base@^1.0.1: cache-directory@~2.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/cache-directory/-/cache-directory-2.0.0.tgz#0d8efa1abbb6d1dd926d255ce733b4f7c5ab2892" + resolved "https://registry.npmjs.org/cache-directory/-/cache-directory-2.0.0.tgz" integrity sha512-7YKEapH+2Uikde8hySyfobXBqPKULDyHNl/lhKm7cKf/GJFdG/tU/WpLrOg2y9aUrQrWUilYqawFIiGJPS6gDA== dependencies: xdg-basedir "^3.0.0" call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz#4b5428c222be985d79c3d82657479dbe0b59b2d6" + resolved "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz" integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ== dependencies: es-errors "^1.3.0" @@ -570,7 +596,7 @@ call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1, call-bind-apply- call-bind@^1.0.8: version "1.0.8" - resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.8.tgz#0736a9660f537e3388826f440d5ec45f744eaa4c" + resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz" integrity sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww== dependencies: call-bind-apply-helpers "^1.0.0" @@ -580,7 +606,7 @@ call-bind@^1.0.8: call-bound@^1.0.2, call-bound@^1.0.3: version "1.0.4" - resolved "https://registry.yarnpkg.com/call-bound/-/call-bound-1.0.4.tgz#238de935d2a2a692928c538c7ccfa91067fd062a" + resolved "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz" integrity sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg== dependencies: call-bind-apply-helpers "^1.0.2" @@ -588,12 +614,12 @@ call-bound@^1.0.2, call-bound@^1.0.3: camelcase@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz" integrity sha512-4nhGqUkc4BqbBBB4Q6zLuD7lzzrHYrjKGeYaEji/3tFR5VdJu9v+LilhGIVe8wxEJPPOeWo7eg8dwY13TZ1BNg== chokidar@^2.0.0: version "2.1.8" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" + resolved "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz" integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== dependencies: anymatch "^2.0.0" @@ -612,7 +638,7 @@ chokidar@^2.0.0: class-utils@^0.3.5: version "0.3.6" - resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" + resolved "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz" integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== dependencies: arr-union "^3.1.0" @@ -622,12 +648,12 @@ class-utils@^0.3.5: clean-git-ref@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/clean-git-ref/-/clean-git-ref-2.0.1.tgz#dcc0ca093b90e527e67adb5a5e55b1af6816dcd9" + resolved "https://registry.npmjs.org/clean-git-ref/-/clean-git-ref-2.0.1.tgz" integrity sha512-bLSptAy2P0s6hU4PzuIMKmMJJSE6gLXGH1cntDu7bWJUksvuM+7ReOK61mozULErYvP6a15rnYl0zFDef+pyPw== cliui@^3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" + resolved "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz" integrity sha512-0yayqDxWQbqk3ojkYqUKqaAQ6AfNKeKWRNA8kR0WXzAsdHpP4BIaOmMAG87JGuO6qcobyW4GjxHd9PmhEd+T9w== dependencies: string-width "^1.0.1" @@ -636,22 +662,22 @@ cliui@^3.2.0: clone-buffer@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/clone-buffer/-/clone-buffer-1.0.0.tgz#e3e25b207ac4e701af721e2cb5a16792cac3dc58" + resolved "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz" integrity sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g== clone-stats@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-1.0.0.tgz#b3782dff8bb5474e18b9b6bf0fdfe782f8777680" + resolved "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz" integrity sha512-au6ydSpg6nsrigcZ4m8Bc9hxjeW+GJ8xh5G3BJCMt4WXe1H10UNaVOamqQTmrx1kjVuxAHIQSNU6hY4Nsn9/ag== clone@^2.1.1, clone@^2.1.2: version "2.1.2" - resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" + resolved "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz" integrity sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w== cloneable-readable@^1.0.0: version "1.1.3" - resolved "https://registry.yarnpkg.com/cloneable-readable/-/cloneable-readable-1.1.3.tgz#120a00cb053bfb63a222e709f9683ea2e11d8cec" + resolved "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.3.tgz" integrity sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ== dependencies: inherits "^2.0.1" @@ -660,12 +686,12 @@ cloneable-readable@^1.0.0: code-point-at@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" + resolved "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz" integrity sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA== collection-map@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-map/-/collection-map-1.0.0.tgz#aea0f06f8d26c780c2b75494385544b2255af18c" + resolved "https://registry.npmjs.org/collection-map/-/collection-map-1.0.0.tgz" integrity sha512-5D2XXSpkOnleOI21TG7p3T0bGAsZ/XknZpKBmGYyluO8pw4zA3K8ZlrBIbC4FXg3m6z/RNFiUFfT2sQK01+UHA== dependencies: arr-map "^2.0.2" @@ -674,7 +700,7 @@ collection-map@^1.0.0: collection-visit@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" + resolved "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz" integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw== dependencies: map-visit "^1.0.0" @@ -682,32 +708,32 @@ collection-visit@^1.0.0: color-support@^1.1.3: version "1.1.3" - resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" + resolved "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz" integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== colorette@^2.0.7: version "2.0.20" - resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a" + resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz" integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w== commander@~11.1: version "11.1.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-11.1.0.tgz#62fdce76006a68e5c1ab3314dc92e800eb83d906" + resolved "https://registry.npmjs.org/commander/-/commander-11.1.0.tgz" integrity sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ== component-emitter@^1.2.1: version "1.3.1" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.1.tgz#ef1d5796f7d93f135ee6fb684340b26403c97d17" + resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.1.tgz" integrity sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ== concat-map@0.0.1: version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== concat-stream@^1.6.0: version "1.6.2" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" + resolved "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz" integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== dependencies: buffer-from "^1.0.0" @@ -717,12 +743,12 @@ concat-stream@^1.6.0: connect-livereload@^0.6.0: version "0.6.1" - resolved "https://registry.yarnpkg.com/connect-livereload/-/connect-livereload-0.6.1.tgz#1ac0c8bb9d9cfd5b28b629987a56a9239db9baaa" + resolved "https://registry.npmjs.org/connect-livereload/-/connect-livereload-0.6.1.tgz" integrity sha512-3R0kMOdL7CjJpU66fzAkCe6HNtd3AavCS4m+uW4KtJjrdGPT0SQEZieAYd+cm+lJoBznNQ4lqipYWkhBMgk00g== connect@^3.6.6: version "3.7.0" - resolved "https://registry.yarnpkg.com/connect/-/connect-3.7.0.tgz#5d49348910caa5e07a01800b030d0c35f20484f8" + resolved "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz" integrity sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ== dependencies: debug "2.6.9" @@ -732,17 +758,17 @@ connect@^3.6.6: continuable-cache@^0.3.1: version "0.3.1" - resolved "https://registry.yarnpkg.com/continuable-cache/-/continuable-cache-0.3.1.tgz#bd727a7faed77e71ff3985ac93351a912733ad0f" + resolved "https://registry.npmjs.org/continuable-cache/-/continuable-cache-0.3.1.tgz" integrity sha512-TF30kpKhTH8AGCG3dut0rdd/19B7Z+qCnrMoBLpyQu/2drZdNrrpcjPEoJeSVsQM+8KmWG5O56oPDjSSUsuTyA== convert-source-map@^1.5.0: version "1.9.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" + resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz" integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== convict@~6.2: version "6.2.4" - resolved "https://registry.yarnpkg.com/convict/-/convict-6.2.4.tgz#be290672bf6397eec808d3b11fc5f71785b02a4b" + resolved "https://registry.npmjs.org/convict/-/convict-6.2.4.tgz" integrity sha512-qN60BAwdMVdofckX7AlohVJ2x9UvjTNoKVXCL2LxFk1l7757EJqf1nySdMkPQer0bt8kQ5lQiyZ9/2NvrFBuwQ== dependencies: lodash.clonedeep "^4.5.0" @@ -750,12 +776,12 @@ convict@~6.2: copy-descriptor@^0.1.0: version "0.1.1" - resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" + resolved "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz" integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw== copy-props@^2.0.1: version "2.0.5" - resolved "https://registry.yarnpkg.com/copy-props/-/copy-props-2.0.5.tgz#03cf9ae328d4ebb36f8f1d804448a6af9ee3f2d2" + resolved "https://registry.npmjs.org/copy-props/-/copy-props-2.0.5.tgz" integrity sha512-XBlx8HSqrT0ObQwmSzM7WE5k8FxTV75h1DX1Z3n6NhQ/UYYAvInWYmG06vFt7hQZArE2fuO62aihiWIVQwh1sw== dependencies: each-props "^1.3.2" @@ -763,17 +789,33 @@ copy-props@^2.0.1: core-util-is@~1.0.0: version "1.0.3" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" + resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz" integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== crc-32@^1.2.0: version "1.2.2" - resolved "https://registry.yarnpkg.com/crc-32/-/crc-32-1.2.2.tgz#3cad35a934b8bf71f25ca524b6da51fb7eace2ff" + resolved "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz" integrity sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ== -d@1, d@^1.0.1, d@^1.0.2: +css-select@^5.1.0: + version "5.2.2" + resolved "https://registry.npmjs.org/css-select/-/css-select-5.2.2.tgz" + integrity sha512-TizTzUddG/xYLA3NXodFM0fSbNizXjOKhqiQQwvhlspadZokn1KDy0NZFS0wuEubIYAV5/c1/lAr0TaaFXEXzw== + dependencies: + boolbase "^1.0.0" + css-what "^6.1.0" + domhandler "^5.0.2" + domutils "^3.0.1" + nth-check "^2.0.1" + +css-what@^6.1.0: + version "6.2.2" + resolved "https://registry.npmjs.org/css-what/-/css-what-6.2.2.tgz" + integrity sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA== + +d@^1.0.1, d@^1.0.2, d@1: version "1.0.2" - resolved "https://registry.yarnpkg.com/d/-/d-1.0.2.tgz#2aefd554b81981e7dccf72d6842ae725cb17e5de" + resolved "https://registry.npmjs.org/d/-/d-1.0.2.tgz" integrity sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw== dependencies: es5-ext "^0.10.64" @@ -781,55 +823,55 @@ d@1, d@^1.0.1, d@^1.0.2: dateformat@^4.6.3: version "4.6.3" - resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-4.6.3.tgz#556fa6497e5217fedb78821424f8a1c22fa3f4b5" + resolved "https://registry.npmjs.org/dateformat/-/dateformat-4.6.3.tgz" integrity sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA== -debug@2.6.9, debug@^2.2.0, debug@^2.3.3: +debug@^2.2.0, debug@^2.3.3, debug@2.6.9: version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" debug@^3.1.0: version "3.2.7" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== dependencies: ms "^2.1.1" decamelize@^1.1.1: version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + resolved "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz" integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== decode-uri-component@^0.2.0: version "0.2.2" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" + resolved "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz" integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ== decompress-response@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc" + resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz" integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ== dependencies: mimic-response "^3.1.0" default-compare@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/default-compare/-/default-compare-1.0.0.tgz#cb61131844ad84d84788fb68fd01681ca7781a2f" + resolved "https://registry.npmjs.org/default-compare/-/default-compare-1.0.0.tgz" integrity sha512-QWfXlM0EkAbqOCbD/6HjdwT19j7WCkMyiRhWilc4H9/5h/RzTF9gv5LYh1+CmDV5d1rki6KAWLtQale0xt20eQ== dependencies: kind-of "^5.0.2" default-resolution@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/default-resolution/-/default-resolution-2.0.0.tgz#bcb82baa72ad79b426a76732f1a81ad6df26d684" + resolved "https://registry.npmjs.org/default-resolution/-/default-resolution-2.0.0.tgz" integrity sha512-2xaP6GiwVwOEbXCGoJ4ufgC76m8cj805jrghScewJC2ZDsb9U0b4BIrba+xt/Uytyd0HvQ6+WymSRTfnYj59GQ== define-data-property@^1.0.1, define-data-property@^1.1.4: version "1.1.4" - resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" + resolved "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz" integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== dependencies: es-define-property "^1.0.0" @@ -838,7 +880,7 @@ define-data-property@^1.0.1, define-data-property@^1.1.4: define-properties@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" + resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz" integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== dependencies: define-data-property "^1.0.1" @@ -847,59 +889,89 @@ define-properties@^1.2.1: define-property@^0.2.5: version "0.2.5" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" + resolved "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz" integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA== dependencies: is-descriptor "^0.1.0" define-property@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" + resolved "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz" integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA== dependencies: is-descriptor "^1.0.0" define-property@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" + resolved "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz" integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== dependencies: is-descriptor "^1.0.2" isobject "^3.0.1" -depd@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" - integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== - depd@~1.1.2: version "1.1.2" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" + resolved "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz" integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== -destroy@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" - integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== +depd@2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz" + integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== destroy@~1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" + resolved "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz" integrity sha512-3NdhDuEXnfun/z7x9GOElY49LoqVHoGScmOKwmxhsS8N5Y+Z8KyPPDnaSzqWgYt/ji4mqwfTS34Htrk0zPIXVg== +destroy@1.2.0: + version "1.2.0" + resolved "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz" + integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== + detect-file@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7" + resolved "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz" integrity sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q== diff3@0.0.3: version "0.0.3" - resolved "https://registry.yarnpkg.com/diff3/-/diff3-0.0.3.tgz#d4e5c3a4cdf4e5fe1211ab42e693fcb4321580fc" + resolved "https://registry.npmjs.org/diff3/-/diff3-0.0.3.tgz" integrity sha512-iSq8ngPOt0K53A6eVr4d5Kn6GNrM2nQZtC740pzIriHtn4pOQ2lyzEXQMBeVcWERN0ye7fhBsk9PbLLQOnUx/g== +dom-serializer@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz" + integrity sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg== + dependencies: + domelementtype "^2.3.0" + domhandler "^5.0.2" + entities "^4.2.0" + +domelementtype@^2.3.0: + version "2.3.0" + resolved "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz" + integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== + +domhandler@^5.0.2, domhandler@^5.0.3: + version "5.0.3" + resolved "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz" + integrity sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w== + dependencies: + domelementtype "^2.3.0" + +domutils@^3.0.1: + version "3.2.2" + resolved "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz" + integrity sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw== + dependencies: + dom-serializer "^2.0.0" + domelementtype "^2.3.0" + domhandler "^5.0.3" + dunder-proto@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/dunder-proto/-/dunder-proto-1.0.1.tgz#d7ae667e1dc83482f8b70fd0f6eefc50da30f58a" + resolved "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz" integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A== dependencies: call-bind-apply-helpers "^1.0.1" @@ -908,7 +980,7 @@ dunder-proto@^1.0.1: duplexify@^3.6.0: version "3.7.1" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" + resolved "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz" integrity sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g== dependencies: end-of-stream "^1.0.0" @@ -918,7 +990,7 @@ duplexify@^3.6.0: each-props@^1.3.2: version "1.3.2" - resolved "https://registry.yarnpkg.com/each-props/-/each-props-1.3.2.tgz#ea45a414d16dd5cfa419b1a81720d5ca06892333" + resolved "https://registry.npmjs.org/each-props/-/each-props-1.3.2.tgz" integrity sha512-vV0Hem3zAGkJAyU7JSjixeU66rwdynTAa1vofCrSA5fEln+m67Az9CcnkVD776/fsN/UjIWmBDoNRS6t6G9RfA== dependencies: is-plain-object "^2.0.1" @@ -926,60 +998,65 @@ each-props@^1.3.2: ee-first@1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + resolved "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz" integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== encodeurl@~1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz" integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== encodeurl@~2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-2.0.0.tgz#7b8ea898077d7e409d3ac45474ea38eaf0857a58" + resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz" integrity sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg== end-of-stream@^1.0.0, end-of-stream@^1.1.0: version "1.4.4" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" + resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz" integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== dependencies: once "^1.4.0" +entities@^4.2.0: + version "4.5.0" + resolved "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz" + integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== + error-ex@^1.2.0: version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== dependencies: is-arrayish "^0.2.1" error@^7.0.0: version "7.2.1" - resolved "https://registry.yarnpkg.com/error/-/error-7.2.1.tgz#eab21a4689b5f684fc83da84a0e390de82d94894" + resolved "https://registry.npmjs.org/error/-/error-7.2.1.tgz" integrity sha512-fo9HBvWnx3NGUKMvMwB/CBCMMrfEJgbDTVDEkPygA3Bdd3lM1OyCd+rbQ8BwnpF6GdVeOLDNmyL4N5Bg80ZvdA== dependencies: string-template "~0.2.1" es-define-property@^1.0.0, es-define-property@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa" + resolved "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz" integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g== es-errors@^1.3.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" + resolved "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz" integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== es-object-atoms@^1.0.0, es-object-atoms@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz#1c4f2c4837327597ce69d2ca190a7fdd172338c1" + resolved "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz" integrity sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA== dependencies: es-errors "^1.3.0" es5-ext@^0.10.35, es5-ext@^0.10.46, es5-ext@^0.10.62, es5-ext@^0.10.64, es5-ext@~0.10.14: version "0.10.64" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.64.tgz#12e4ffb48f1ba2ea777f1fcdd1918ef73ea21714" + resolved "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.64.tgz" integrity sha512-p2snDhiLaXe6dahss1LddxqEm+SkuDvV8dnIQG0MWjyHpcMNfXKPE+/Cc0y+PhxJX3A4xGNeFCj5oc0BUh6deg== dependencies: es6-iterator "^2.0.3" @@ -989,7 +1066,7 @@ es5-ext@^0.10.35, es5-ext@^0.10.46, es5-ext@^0.10.62, es5-ext@^0.10.64, es5-ext@ es6-iterator@^2.0.1, es6-iterator@^2.0.3: version "2.0.3" - resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" + resolved "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz" integrity sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g== dependencies: d "1" @@ -998,7 +1075,7 @@ es6-iterator@^2.0.1, es6-iterator@^2.0.3: es6-symbol@^3.1.1, es6-symbol@^3.1.3: version "3.1.4" - resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.4.tgz#f4e7d28013770b4208ecbf3e0bf14d3bcb557b8c" + resolved "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.4.tgz" integrity sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg== dependencies: d "^1.0.2" @@ -1006,7 +1083,7 @@ es6-symbol@^3.1.1, es6-symbol@^3.1.3: es6-weak-map@^2.0.1: version "2.0.3" - resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.3.tgz#b6da1f16cc2cc0d9be43e6bdbfc5e7dfcdf31d53" + resolved "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz" integrity sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA== dependencies: d "1" @@ -1016,12 +1093,12 @@ es6-weak-map@^2.0.1: escape-html@~1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + resolved "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz" integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== esniff@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/esniff/-/esniff-2.0.1.tgz#a4d4b43a5c71c7ec51c51098c1d8a29081f9b308" + resolved "https://registry.npmjs.org/esniff/-/esniff-2.0.1.tgz" integrity sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg== dependencies: d "^1.0.1" @@ -1031,12 +1108,12 @@ esniff@^2.0.1: etag@~1.8.1: version "1.8.1" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + resolved "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz" integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== event-emitter@^0.3.5: version "0.3.5" - resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" + resolved "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz" integrity sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA== dependencies: d "1" @@ -1044,17 +1121,17 @@ event-emitter@^0.3.5: event-target-shim@^5.0.0: version "5.0.1" - resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" + resolved "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz" integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== events@^3.3.0: version "3.3.0" - resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" + resolved "https://registry.npmjs.org/events/-/events-3.3.0.tgz" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== expand-brackets@^2.1.4: version "2.1.4" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" + resolved "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz" integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA== dependencies: debug "^2.3.3" @@ -1067,28 +1144,36 @@ expand-brackets@^2.1.4: expand-tilde@^2.0.0, expand-tilde@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" + resolved "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz" integrity sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw== dependencies: homedir-polyfill "^1.0.1" ext@^1.7.0: version "1.7.0" - resolved "https://registry.yarnpkg.com/ext/-/ext-1.7.0.tgz#0ea4383c0103d60e70be99e9a7f11027a33c4f5f" + resolved "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz" integrity sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw== dependencies: type "^2.7.2" extend-shallow@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" + resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz" integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== dependencies: is-extendable "^0.1.0" -extend-shallow@^3.0.0, extend-shallow@^3.0.2: +extend-shallow@^3.0.0: version "3.0.2" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" + resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz" + integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== + dependencies: + assign-symbols "^1.0.0" + is-extendable "^1.0.1" + +extend-shallow@^3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz" integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== dependencies: assign-symbols "^1.0.0" @@ -1096,12 +1181,12 @@ extend-shallow@^3.0.0, extend-shallow@^3.0.2: extend@^3.0.0: version "3.0.2" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" + resolved "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== extglob@^2.0.4: version "2.0.4" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" + resolved "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz" integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== dependencies: array-unique "^0.3.2" @@ -1115,7 +1200,7 @@ extglob@^2.0.4: fancy-log@^1.3.2: version "1.3.3" - resolved "https://registry.yarnpkg.com/fancy-log/-/fancy-log-1.3.3.tgz#dbc19154f558690150a23953a0adbd035be45fc7" + resolved "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz" integrity sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw== dependencies: ansi-gray "^0.1.1" @@ -1125,17 +1210,17 @@ fancy-log@^1.3.2: fast-copy@^3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/fast-copy/-/fast-copy-3.0.2.tgz#59c68f59ccbcac82050ba992e0d5c389097c9d35" + resolved "https://registry.npmjs.org/fast-copy/-/fast-copy-3.0.2.tgz" integrity sha512-dl0O9Vhju8IrcLndv2eU4ldt1ftXMqqfgN4H1cpmGV7P6jeB9FwpN9a2c8DPGE1Ys88rNUJVYDHq73CGAGOPfQ== fast-fifo@^1.3.2: version "1.3.2" - resolved "https://registry.yarnpkg.com/fast-fifo/-/fast-fifo-1.3.2.tgz#286e31de96eb96d38a97899815740ba2a4f3640c" + resolved "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz" integrity sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ== fast-glob@~3.3: version "3.3.3" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.3.tgz#d06d585ce8dba90a16b0505c543c3ccfb3aeb818" + resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz" integrity sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg== dependencies: "@nodelib/fs.stat" "^2.0.2" @@ -1146,41 +1231,41 @@ fast-glob@~3.3: fast-levenshtein@^1.0.0: version "1.1.4" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-1.1.4.tgz#e6a754cc8f15e58987aa9cbd27af66fd6f4e5af9" + resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-1.1.4.tgz" integrity sha512-Ia0sQNrMPXXkqVFt6w6M1n1oKo3NfKs+mvaV811Jwir7vAk9a6PVV9VPYf6X3BU97QiLEmuW3uXH9u87zDFfdw== fast-redact@^3.1.1: version "3.5.0" - resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-3.5.0.tgz#e9ea02f7e57d0cd8438180083e93077e496285e4" + resolved "https://registry.npmjs.org/fast-redact/-/fast-redact-3.5.0.tgz" integrity sha512-dwsoQlS7h9hMeYUq1W++23NDcBLV4KqONnITDV9DjfS3q1SgDGVrBdvvTLUotWtPSD7asWDV9/CmsZPy8Hf70A== fast-safe-stringify@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz#c406a83b6e70d9e35ce3b30a81141df30aeba884" + resolved "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz" integrity sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA== fastq@^1.6.0: version "1.19.1" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.19.1.tgz#d50eaba803c8846a883c16492821ebcd2cda55f5" + resolved "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz" integrity sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ== dependencies: reusify "^1.0.4" faye-websocket@~0.10.0: version "0.10.0" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" + resolved "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz" integrity sha512-Xhj93RXbMSq8urNCUq4p9l0P6hnySJ/7YNRhYNug0bLOuii7pKO7xQFb5mx9xZXWCar88pLPb805PvUkwrLZpQ== dependencies: websocket-driver ">=0.5.1" file-uri-to-path@1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" + resolved "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz" integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== fill-range@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" + resolved "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz" integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ== dependencies: extend-shallow "^2.0.1" @@ -1190,14 +1275,14 @@ fill-range@^4.0.0: fill-range@^7.1.1: version "7.1.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" + resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz" integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== dependencies: to-regex-range "^5.0.1" finalhandler@1.1.2: version "1.1.2" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d" + resolved "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz" integrity sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA== dependencies: debug "2.6.9" @@ -1210,7 +1295,7 @@ finalhandler@1.1.2: find-up@^1.0.0: version "1.1.2" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" + resolved "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz" integrity sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA== dependencies: path-exists "^2.0.0" @@ -1218,7 +1303,7 @@ find-up@^1.0.0: findup-sync@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-2.0.0.tgz#9326b1488c22d1a6088650a86901b2d9a90a2cbc" + resolved "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz" integrity sha512-vs+3unmJT45eczmcAZ6zMJtxN3l/QXeccaXQx5cu/MeJMhewVfoWZqibRkOxPnmoR59+Zy5hjabfQc6JLSah4g== dependencies: detect-file "^1.0.0" @@ -1228,7 +1313,7 @@ findup-sync@^2.0.0: findup-sync@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-3.0.0.tgz#17b108f9ee512dfb7a5c7f3c8b27ea9e1a9c08d1" + resolved "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz" integrity sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg== dependencies: detect-file "^1.0.0" @@ -1238,7 +1323,7 @@ findup-sync@^3.0.0: fined@^1.0.1: version "1.2.0" - resolved "https://registry.yarnpkg.com/fined/-/fined-1.2.0.tgz#d00beccf1aa2b475d16d423b0238b713a2c4a37b" + resolved "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz" integrity sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng== dependencies: expand-tilde "^2.0.2" @@ -1249,12 +1334,12 @@ fined@^1.0.1: flagged-respawn@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/flagged-respawn/-/flagged-respawn-1.0.1.tgz#e7de6f1279ddd9ca9aac8a5971d618606b3aab41" + resolved "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz" integrity sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q== flush-write-stream@^1.0.2: version "1.1.1" - resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8" + resolved "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz" integrity sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w== dependencies: inherits "^2.0.3" @@ -1262,31 +1347,31 @@ flush-write-stream@^1.0.2: for-in@^1.0.1, for-in@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + resolved "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz" integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== for-own@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b" + resolved "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz" integrity sha512-0OABksIGrxKK8K4kynWkQ7y1zounQxP+CWnyclVwj81KW3vlLlGUx57DKGcP/LH216GzqnstnPocF16Nxs0Ycg== dependencies: for-in "^1.0.1" fragment-cache@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" + resolved "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz" integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA== dependencies: map-cache "^0.2.2" fresh@0.5.2: version "0.5.2" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + resolved "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz" integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== fs-mkdirp-stream@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz#0b7815fc3201c6a69e14db98ce098c16935259eb" + resolved "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz" integrity sha512-+vSd9frUnapVC2RZYfL3FCB2p3g4TBhaUmrsWlSudsGdnxIuUvBB2QM1VZeBtc49QFwrp+wQLrDs3+xxDgI5gQ== dependencies: graceful-fs "^4.1.11" @@ -1294,12 +1379,12 @@ fs-mkdirp-stream@^1.0.0: fs.realpath@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== fsevents@^1.2.7: version "1.2.13" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38" + resolved "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz" integrity sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw== dependencies: bindings "^1.5.0" @@ -1307,17 +1392,17 @@ fsevents@^1.2.7: function-bind@^1.1.2: version "1.1.2" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz" integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== get-caller-file@^1.0.1: version "1.0.3" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" + resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz" integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w== get-intrinsic@^1.2.4, get-intrinsic@^1.2.5, get-intrinsic@^1.3.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01" + resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz" integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== dependencies: call-bind-apply-helpers "^1.0.2" @@ -1333,7 +1418,7 @@ get-intrinsic@^1.2.4, get-intrinsic@^1.2.5, get-intrinsic@^1.3.0: get-proto@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/get-proto/-/get-proto-1.0.1.tgz#150b3f2743869ef3e851ec0c49d15b1d14d00ee1" + resolved "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz" integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g== dependencies: dunder-proto "^1.0.1" @@ -1341,12 +1426,12 @@ get-proto@^1.0.1: get-value@^2.0.3, get-value@^2.0.6: version "2.0.6" - resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" + resolved "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz" integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== glob-parent@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz" integrity sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA== dependencies: is-glob "^3.1.0" @@ -1354,14 +1439,14 @@ glob-parent@^3.1.0: glob-parent@^5.1.2: version "5.1.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" glob-stream@^6.1.0: version "6.1.0" - resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-6.1.0.tgz#7045c99413b3eb94888d83ab46d0b404cc7bdde4" + resolved "https://registry.npmjs.org/glob-stream/-/glob-stream-6.1.0.tgz" integrity sha512-uMbLGAP3S2aDOHUDfdoYcdIePUCfysbAd0IAoWVZbeGU/oNQ8asHVSshLDJUPWxfzj8zsCG7/XeHPHTtow0nsw== dependencies: extend "^3.0.0" @@ -1377,7 +1462,7 @@ glob-stream@^6.1.0: glob-watcher@^5.0.3: version "5.0.5" - resolved "https://registry.yarnpkg.com/glob-watcher/-/glob-watcher-5.0.5.tgz#aa6bce648332924d9a8489be41e3e5c52d4186dc" + resolved "https://registry.npmjs.org/glob-watcher/-/glob-watcher-5.0.5.tgz" integrity sha512-zOZgGGEHPklZNjZQaZ9f41i7F2YwE+tS5ZHrDhbBCk3stwahn5vQxnFmBJZHoYdusR6R1bLSXeGUy/BhctwKzw== dependencies: anymatch "^2.0.0" @@ -1388,9 +1473,9 @@ glob-watcher@^5.0.3: normalize-path "^3.0.0" object.defaults "^1.1.0" -glob@7.1.3: +glob@^7.1.1, glob@7.1.3: version "7.1.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" + resolved "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz" integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== dependencies: fs.realpath "^1.0.0" @@ -1400,21 +1485,9 @@ glob@7.1.3: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.1.1: - version "7.2.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" - integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.1.1" - once "^1.3.0" - path-is-absolute "^1.0.0" - global-modules@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" + resolved "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz" integrity sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg== dependencies: global-prefix "^1.0.1" @@ -1423,7 +1496,7 @@ global-modules@^1.0.0: global-prefix@^1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" + resolved "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz" integrity sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg== dependencies: expand-tilde "^2.0.2" @@ -1434,24 +1507,24 @@ global-prefix@^1.0.1: glogg@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/glogg/-/glogg-1.0.2.tgz#2d7dd702beda22eb3bffadf880696da6d846313f" + resolved "https://registry.npmjs.org/glogg/-/glogg-1.0.2.tgz" integrity sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA== dependencies: sparkles "^1.0.0" gopd@^1.0.1, gopd@^1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" + resolved "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz" integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg== graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6: version "4.2.11" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" + resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== gulp-cli@^2.2.0, gulp-cli@^2.3.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/gulp-cli/-/gulp-cli-2.3.0.tgz#ec0d380e29e52aa45e47977f0d32e18fd161122f" + resolved "https://registry.npmjs.org/gulp-cli/-/gulp-cli-2.3.0.tgz" integrity sha512-zzGBl5fHo0EKSXsHzjspp3y5CONegCm8ErO5Qh0UzFzk2y4tMvzLWhoDokADbarfZRL2pGpRp7yt6gfJX4ph7A== dependencies: ansi-colors "^1.0.1" @@ -1475,7 +1548,7 @@ gulp-cli@^2.2.0, gulp-cli@^2.3.0: gulp-connect@^5.7.0: version "5.7.0" - resolved "https://registry.yarnpkg.com/gulp-connect/-/gulp-connect-5.7.0.tgz#7e925f5e4c34ebfedf9f318576966e8fe8840d5a" + resolved "https://registry.npmjs.org/gulp-connect/-/gulp-connect-5.7.0.tgz" integrity sha512-8tRcC6wgXMLakpPw9M7GRJIhxkYdgZsXwn7n56BA2bQYGLR9NOPhMzx7js+qYDy6vhNkbApGKURjAw1FjY4pNA== dependencies: ansi-colors "^2.0.5" @@ -1490,7 +1563,7 @@ gulp-connect@^5.7.0: gulp@^4.0.2: version "4.0.2" - resolved "https://registry.yarnpkg.com/gulp/-/gulp-4.0.2.tgz#543651070fd0f6ab0a0650c6a3e6ff5a7cb09caa" + resolved "https://registry.npmjs.org/gulp/-/gulp-4.0.2.tgz" integrity sha512-dvEs27SCZt2ibF29xYgmnwwCYZxdxhQ/+LFWlbAW8y7jt68L/65402Lz3+CKy0Ov4rOs+NERmDq7YlZaDqUIfA== dependencies: glob-watcher "^5.0.3" @@ -1500,14 +1573,14 @@ gulp@^4.0.2: gulplog@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/gulplog/-/gulplog-1.0.0.tgz#e28c4d45d05ecbbed818363ce8f9c5926229ffe5" + resolved "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz" integrity sha512-hm6N8nrm3Y08jXie48jsC55eCZz9mnb4OirAStEk2deqeyhXU3C1otDVh+ccttMuc1sBi6RX6ZJ720hs9RCvgw== dependencies: glogg "^1.0.0" handlebars@~4.7: version "4.7.8" - resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.8.tgz#41c42c18b1be2365439188c77c6afae71c0cd9e9" + resolved "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz" integrity sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ== dependencies: minimist "^1.2.5" @@ -1519,19 +1592,19 @@ handlebars@~4.7: has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" + resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz" integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== dependencies: es-define-property "^1.0.0" has-symbols@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338" + resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz" integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ== has-value@^0.3.1: version "0.3.1" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" + resolved "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz" integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== dependencies: get-value "^2.0.3" @@ -1540,7 +1613,7 @@ has-value@^0.3.1: has-value@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" + resolved "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz" integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw== dependencies: get-value "^2.0.6" @@ -1549,12 +1622,12 @@ has-value@^1.0.0: has-values@^0.1.4: version "0.1.4" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" + resolved "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz" integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ== has-values@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" + resolved "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz" integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ== dependencies: is-number "^3.0.0" @@ -1562,36 +1635,51 @@ has-values@^1.0.0: hasown@^2.0.0, hasown@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" + resolved "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz" integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== dependencies: function-bind "^1.1.2" +he@1.2.0: + version "1.2.0" + resolved "https://registry.npmjs.org/he/-/he-1.2.0.tgz" + integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== + help-me@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/help-me/-/help-me-5.0.0.tgz#b1ebe63b967b74060027c2ac61f9be12d354a6f6" + resolved "https://registry.npmjs.org/help-me/-/help-me-5.0.0.tgz" integrity sha512-7xgomUX6ADmcYzFik0HzAxh/73YlKR9bmFzf51CZwR+b6YtzU2m0u49hQCqV6SvlqIqsaxovfwdvbnsw3b/zpg== homedir-polyfill@^1.0.1: version "1.0.3" - resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8" + resolved "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz" integrity sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA== dependencies: parse-passwd "^1.0.0" hosted-git-info@^2.1.4: version "2.8.9" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" + resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz" integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== hpagent@~1.2: version "1.2.0" - resolved "https://registry.yarnpkg.com/hpagent/-/hpagent-1.2.0.tgz#0ae417895430eb3770c03443456b8d90ca464903" + resolved "https://registry.npmjs.org/hpagent/-/hpagent-1.2.0.tgz" integrity sha512-A91dYTeIB6NoXG+PxTQpCCDDnfHsW9kc06Lvpu1TEe9gnd6ZFeiBoRO9JvzEv6xK7EX97/dUE8g/vBMTqTS3CA== +http-errors@~1.6.2: + version "1.6.3" + resolved "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz" + integrity sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A== + dependencies: + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.0" + statuses ">= 1.4.0 < 2" + http-errors@2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" + resolved "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz" integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== dependencies: depd "2.0.0" @@ -1600,67 +1688,57 @@ http-errors@2.0.0: statuses "2.0.1" toidentifier "1.0.1" -http-errors@~1.6.2: - version "1.6.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" - integrity sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A== - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.4.0 < 2" - http-parser-js@>=0.5.1: version "0.5.10" - resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.10.tgz#b3277bd6d7ed5588e20ea73bf724fcbe44609075" + resolved "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.10.tgz" integrity sha512-Pysuw9XpUq5dVc/2SMHpuTY01RFl8fttgcyunjL7eEMhGM3cI4eOmiCycJDVCo/7O7ClfQD3SaI6ftDzqOXYMA== ieee754@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== ignore@^5.1.4: version "5.3.2" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" + resolved "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz" integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== inflight@^1.0.4: version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== dependencies: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3: +inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3, inherits@2, inherits@2.0.4: version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== inherits@2.0.3: version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" integrity sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw== ini@^1.3.4: version "1.3.8" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" + resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== interpret@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" + resolved "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz" integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== invert-kv@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" + resolved "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz" integrity sha512-xgs2NH9AE66ucSq4cNG1nhSFghr5l6tdL15Pk+jl46bmmBapgoaY/AacXyaDznAqmGL99TiLSQgO/XazFSKYeQ== is-absolute@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-1.0.0.tgz#395e1ae84b11f26ad1795e73c17378e48a301576" + resolved "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz" integrity sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA== dependencies: is-relative "^1.0.0" @@ -1668,45 +1746,45 @@ is-absolute@^1.0.0: is-accessor-descriptor@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.1.tgz#3223b10628354644b86260db29b3e693f5ceedd4" + resolved "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.1.tgz" integrity sha512-YBUanLI8Yoihw923YeFUS5fs0fF2f5TSFTNiYAAzhhDscDa3lEqYuz1pDOEP5KvX94I9ey3vsqjJcLVFVU+3QA== dependencies: hasown "^2.0.0" is-arrayish@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== is-binary-path@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" + resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz" integrity sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q== dependencies: binary-extensions "^1.0.0" is-buffer@^1.1.5: version "1.1.6" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz" integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== is-core-module@^2.16.0: version "2.16.1" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.16.1.tgz#2a98801a849f43e2add644fbb6bc6229b19a4ef4" + resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz" integrity sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w== dependencies: hasown "^2.0.2" is-data-descriptor@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.1.tgz#2109164426166d32ea38c405c1e0945d9e6a4eeb" + resolved "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.1.tgz" integrity sha512-bc4NlCDiCr28U4aEsQ3Qs2491gVq4V8G7MQyws968ImqjKuYtTJXrl7Vq7jsN7Ly/C3xj5KWFrY7sHNeDkAzXw== dependencies: hasown "^2.0.0" is-descriptor@^0.1.0: version "0.1.7" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.7.tgz#2727eb61fd789dcd5bdf0ed4569f551d2fe3be33" + resolved "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz" integrity sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg== dependencies: is-accessor-descriptor "^1.0.1" @@ -1714,7 +1792,7 @@ is-descriptor@^0.1.0: is-descriptor@^1.0.0, is-descriptor@^1.0.2: version "1.0.3" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.3.tgz#92d27cb3cd311c4977a4db47df457234a13cb306" + resolved "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz" integrity sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw== dependencies: is-accessor-descriptor "^1.0.1" @@ -1722,130 +1800,130 @@ is-descriptor@^1.0.0, is-descriptor@^1.0.2: is-extendable@^0.1.0, is-extendable@^0.1.1: version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + resolved "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz" integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== is-extendable@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" + resolved "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz" integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== dependencies: is-plain-object "^2.0.4" is-extglob@^2.1.0, is-extglob@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== is-fullwidth-code-point@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" + resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz" integrity sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw== dependencies: number-is-nan "^1.0.0" is-glob@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" + resolved "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz" integrity sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw== dependencies: is-extglob "^2.1.0" is-glob@^4.0.0, is-glob@^4.0.1: version "4.0.3" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== dependencies: is-extglob "^2.1.1" is-negated-glob@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2" + resolved "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz" integrity sha512-czXVVn/QEmgvej1f50BZ648vUI+em0xqMq2Sn+QncCLN4zj1UAxlT+kw/6ggQTOaZPd1HqKQGEqbpQVtJucWug== is-number@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" + resolved "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz" integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg== dependencies: kind-of "^3.0.2" is-number@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" + resolved "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz" integrity sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ== is-number@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: version "2.0.4" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz" integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== dependencies: isobject "^3.0.1" is-plain-object@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" + resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz" integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== is-relative@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-1.0.0.tgz#a1bb6935ce8c5dba1e8b9754b9b2dcc020e2260d" + resolved "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz" integrity sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA== dependencies: is-unc-path "^1.0.0" is-unc-path@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-unc-path/-/is-unc-path-1.0.0.tgz#d731e8898ed090a12c352ad2eaed5095ad322c9d" + resolved "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz" integrity sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ== dependencies: unc-path-regex "^0.1.2" is-utf8@^0.2.0, is-utf8@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" + resolved "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz" integrity sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q== is-valid-glob@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-valid-glob/-/is-valid-glob-1.0.0.tgz#29bf3eff701be2d4d315dbacc39bc39fe8f601aa" + resolved "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz" integrity sha512-AhiROmoEFDSsjx8hW+5sGwgKVIORcXnrlAx/R0ZSeaPw70Vw0CqkGBBhHGL58Uox2eXnU1AnvXJl1XlyedO5bA== is-windows@^1.0.1, is-windows@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" + resolved "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz" integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== -isarray@1.0.0, isarray@~1.0.0: +isarray@~1.0.0, isarray@1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== isexe@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== isobject@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + resolved "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz" integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA== dependencies: isarray "1.0.0" isobject@^3.0.0, isobject@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz" integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== isomorphic-git@~1.25: version "1.25.10" - resolved "https://registry.yarnpkg.com/isomorphic-git/-/isomorphic-git-1.25.10.tgz#59ff7af88773b126f2b273ef3c536c08308b6d36" + resolved "https://registry.npmjs.org/isomorphic-git/-/isomorphic-git-1.25.10.tgz" integrity sha512-IxGiaKBwAdcgBXwIcxJU6rHLk+NrzYaaPKXXQffcA0GW3IUrQXdUPDXDo+hkGVcYruuz/7JlGBiuaeTCgIgivQ== dependencies: async-lock "^1.4.1" @@ -1862,58 +1940,58 @@ isomorphic-git@~1.25: joycon@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/joycon/-/joycon-3.1.1.tgz#bce8596d6ae808f8b68168f5fc69280996894f03" + resolved "https://registry.npmjs.org/joycon/-/joycon-3.1.1.tgz" integrity sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw== js-yaml@^4.1.0, js-yaml@~4.1: version "4.1.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz" integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== dependencies: argparse "^2.0.1" json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== json5@~2.2: version "2.2.3" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== just-debounce@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/just-debounce/-/just-debounce-1.1.0.tgz#2f81a3ad4121a76bc7cb45dbf704c0d76a8e5ddf" + resolved "https://registry.npmjs.org/just-debounce/-/just-debounce-1.1.0.tgz" integrity sha512-qpcRocdkUmf+UTNBYx5w6dexX5J31AKK1OmPwH630a83DdVVUIngk55RSAiIGpQyoH0dlr872VHfPjnQnK1qDQ== kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + resolved "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz" integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== dependencies: is-buffer "^1.1.5" kind-of@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" + resolved "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz" integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw== dependencies: is-buffer "^1.1.5" kind-of@^5.0.2: version "5.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" + resolved "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz" integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== kind-of@^6.0.2: version "6.0.3" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" + resolved "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== last-run@^1.1.0: version "1.1.1" - resolved "https://registry.yarnpkg.com/last-run/-/last-run-1.1.1.tgz#45b96942c17b1c79c772198259ba943bebf8ca5b" + resolved "https://registry.npmjs.org/last-run/-/last-run-1.1.1.tgz" integrity sha512-U/VxvpX4N/rFvPzr3qG5EtLKEnNI0emvIQB3/ecEwv+8GHaUKbIB8vxv1Oai5FAF0d0r7LXHhLLe5K/yChm5GQ== dependencies: default-resolution "^2.0.0" @@ -1921,28 +1999,28 @@ last-run@^1.1.0: lazystream@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/lazystream/-/lazystream-1.0.1.tgz#494c831062f1f9408251ec44db1cba29242a2638" + resolved "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz" integrity sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw== dependencies: readable-stream "^2.0.5" lcid@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" + resolved "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz" integrity sha512-YiGkH6EnGrDGqLMITnGjXtGmNtjoXw9SVUzcaos8RBi7Ps0VBylkq+vOcY9QE5poLasPCR849ucFUkl0UzUyOw== dependencies: invert-kv "^1.0.0" lead@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/lead/-/lead-1.0.0.tgz#6f14f99a37be3a9dd784f5495690e5903466ee42" + resolved "https://registry.npmjs.org/lead/-/lead-1.0.0.tgz" integrity sha512-IpSVCk9AYvLHo5ctcIXxOBpMWUe+4TKN3VPWAKUbJikkmsGp0VrSM8IttVc32D6J4WUsiPE6aEFRNmIoF/gdow== dependencies: flush-write-stream "^1.0.2" liftoff@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/liftoff/-/liftoff-3.1.0.tgz#c9ba6081f908670607ee79062d700df062c52ed3" + resolved "https://registry.npmjs.org/liftoff/-/liftoff-3.1.0.tgz" integrity sha512-DlIPlJUkCV0Ips2zf2pJP0unEoT1kwYhiiPUGF3s/jtxTCjziNLoiVVh+jqWOWeFi6mmwQ5fNxvAUyPad4Dfog== dependencies: extend "^3.0.0" @@ -1956,12 +2034,12 @@ liftoff@^3.1.0: livereload-js@^2.3.0: version "2.4.0" - resolved "https://registry.yarnpkg.com/livereload-js/-/livereload-js-2.4.0.tgz#447c31cf1ea9ab52fc20db615c5ddf678f78009c" + resolved "https://registry.npmjs.org/livereload-js/-/livereload-js-2.4.0.tgz" integrity sha512-XPQH8Z2GDP/Hwz2PCDrh2mth4yFejwA1OZ/81Ti3LgKyhDcEjsSsqFWZojHG0va/duGd+WyosY7eXLDoOyqcPw== load-json-file@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" + resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz" integrity sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A== dependencies: graceful-fs "^4.1.2" @@ -1972,36 +2050,36 @@ load-json-file@^1.0.0: lodash.clonedeep@^4.5.0: version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + resolved "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz" integrity sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ== make-iterator@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/make-iterator/-/make-iterator-1.0.1.tgz#29b33f312aa8f547c4a5e490f56afcec99133ad6" + resolved "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz" integrity sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw== dependencies: kind-of "^6.0.2" map-cache@^0.2.0, map-cache@^0.2.2: version "0.2.2" - resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" + resolved "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz" integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== map-stream@^0.0.7: version "0.0.7" - resolved "https://registry.yarnpkg.com/map-stream/-/map-stream-0.0.7.tgz#8a1f07896d82b10926bd3744a2420009f88974a8" + resolved "https://registry.npmjs.org/map-stream/-/map-stream-0.0.7.tgz" integrity sha512-C0X0KQmGm3N2ftbTGBhSyuydQ+vV1LC3f3zPvT3RXHXNZrvfPZcoXp/N5DOa8vedX/rTMm2CjTtivFg2STJMRQ== map-visit@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" + resolved "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz" integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w== dependencies: object-visit "^1.0.0" matchdep@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/matchdep/-/matchdep-2.0.0.tgz#c6f34834a0d8dbc3b37c27ee8bbcb27c7775582e" + resolved "https://registry.npmjs.org/matchdep/-/matchdep-2.0.0.tgz" integrity sha512-LFgVbaHIHMqCRuCZyfCtUOq9/Lnzhi7Z0KFUE2fhD54+JN2jLh3hC02RLkqauJ3U4soU6H1J3tfj/Byk7GoEjA== dependencies: findup-sync "^2.0.0" @@ -2011,17 +2089,17 @@ matchdep@^2.0.0: math-intrinsics@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9" + resolved "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz" integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g== merge2@^1.3.0: version "1.4.1" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4: version "3.1.10" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" + resolved "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz" integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== dependencies: arr-diff "^4.0.0" @@ -2040,7 +2118,7 @@ micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4: micromatch@^4.0.8: version "4.0.8" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" + resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz" integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== dependencies: braces "^3.0.3" @@ -2048,86 +2126,91 @@ micromatch@^4.0.8: mime-db@1.52.0: version "1.52.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== mime-types@~2.1, mime-types@~2.1.17, mime-types@~2.1.34: version "2.1.35" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== dependencies: mime-db "1.52.0" mime@1.4.1: version "1.4.1" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" + resolved "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz" integrity sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ== mime@1.6.0: version "1.6.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + resolved "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== mimic-response@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9" + resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz" integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ== -minimatch@^3.0.4, minimatch@^3.1.1: +minimatch@^3.0.4: version "3.1.2" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== dependencies: brace-expansion "^1.1.7" minimist@^1.2.5, minimist@^1.2.6: version "1.2.8" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== minimisted@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/minimisted/-/minimisted-2.0.1.tgz#d059fb905beecf0774bc3b308468699709805cb1" + resolved "https://registry.npmjs.org/minimisted/-/minimisted-2.0.1.tgz" integrity sha512-1oPjfuLQa2caorJUM8HV8lGgWCc0qqAO1MNv/k05G4qslmsndV/5WdNZrqCiyqiz3wohia2Ij2B7w2Dr7/IyrA== dependencies: minimist "^1.2.5" mixin-deep@^1.2.0: version "1.3.2" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" + resolved "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz" integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== dependencies: for-in "^1.0.2" is-extendable "^1.0.1" +ms@^2.1.1: + version "2.1.3" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + ms@2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== -ms@2.1.3, ms@^2.1.1: +ms@2.1.3: version "2.1.3" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== multi-progress@~4.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/multi-progress/-/multi-progress-4.0.0.tgz#a14dd4e4da14f6a7cc2e1a5c0abd8b005dd23923" + resolved "https://registry.npmjs.org/multi-progress/-/multi-progress-4.0.0.tgz" integrity sha512-9zcjyOou3FFCKPXsmkbC3ethv51SFPoA4dJD6TscIp2pUmy26kBDZW6h9XofPELrzseSkuD7r0V+emGEeo39Pg== mute-stdout@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/mute-stdout/-/mute-stdout-1.0.1.tgz#acb0300eb4de23a7ddeec014e3e96044b3472331" + resolved "https://registry.npmjs.org/mute-stdout/-/mute-stdout-1.0.1.tgz" integrity sha512-kDcwXR4PS7caBpuRYYBUz9iVixUk3anO3f5OYFiIPwK/20vCzKCHyKoulbiDY1S53zD2bxUpxN/IJ+TnXjfvxg== nan@^2.12.1: version "2.22.2" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.22.2.tgz#6b504fd029fb8f38c0990e52ad5c26772fdacfbb" + resolved "https://registry.npmjs.org/nan/-/nan-2.22.2.tgz" integrity sha512-DANghxFkS1plDdRsX0X9pm0Z6SJNN6gBdtXfanwoZ8hooC5gosGFSBGRYHUVPz1asKA/kMRqDRdHrluZ61SpBQ== nanomatch@^1.2.9: version "1.2.13" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" + resolved "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz" integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== dependencies: arr-diff "^4.0.0" @@ -2144,22 +2227,37 @@ nanomatch@^1.2.9: negotiator@0.6.3: version "0.6.3" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" + resolved "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz" integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== neo-async@^2.6.2: version "2.6.2" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" + resolved "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== next-tick@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.1.0.tgz#1836ee30ad56d67ef281b22bd199f709449b35eb" + resolved "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz" integrity sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ== +node-html-markdown@^1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/node-html-markdown/-/node-html-markdown-1.3.0.tgz" + integrity sha512-OeFi3QwC/cPjvVKZ114tzzu+YoR+v9UXW5RwSXGUqGb0qCl0DvP406tzdL7SFn8pZrMyzXoisfG2zcuF9+zw4g== + dependencies: + node-html-parser "^6.1.1" + +node-html-parser@^6.1.1: + version "6.1.13" + resolved "https://registry.npmjs.org/node-html-parser/-/node-html-parser-6.1.13.tgz" + integrity sha512-qIsTMOY4C/dAa5Q5vsobRpOOvPfC4pB61UVW2uSwZNUp0QU/jCekTal1vMmbO0DgdHeLUJpv/ARmDqErVxA3Sg== + dependencies: + css-select "^5.1.0" + he "1.2.0" + normalize-package-data@^2.3.2: version "2.5.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" + resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== dependencies: hosted-git-info "^2.1.4" @@ -2169,36 +2267,43 @@ normalize-package-data@^2.3.2: normalize-path@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" + resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz" integrity sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w== dependencies: remove-trailing-separator "^1.0.1" normalize-path@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== now-and-later@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/now-and-later/-/now-and-later-2.0.1.tgz#8e579c8685764a7cc02cb680380e94f43ccb1f7c" + resolved "https://registry.npmjs.org/now-and-later/-/now-and-later-2.0.1.tgz" integrity sha512-KGvQ0cB70AQfg107Xvs/Fbu+dGmZoTRJp2TaPwcwQm3/7PteUyN2BCgk8KBMPGBUXZdVwyWS8fDCGFygBm19UQ== dependencies: once "^1.3.2" +nth-check@^2.0.1: + version "2.1.1" + resolved "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz" + integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w== + dependencies: + boolbase "^1.0.0" + number-is-nan@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" + resolved "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz" integrity sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ== object-assign@^4.1.0: version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== object-copy@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" + resolved "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz" integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ== dependencies: copy-descriptor "^0.1.0" @@ -2207,24 +2312,24 @@ object-copy@^0.1.0: object-inspect@^1.13.3: version "1.13.4" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.4.tgz#8375265e21bc20d0fa582c22e1b13485d6e00213" + resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz" integrity sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew== object-keys@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== object-visit@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" + resolved "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz" integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA== dependencies: isobject "^3.0.0" object.assign@^4.0.4, object.assign@^4.1.0: version "4.1.7" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.7.tgz#8c14ca1a424c6a561b0bb2a22f66f5049a945d3d" + resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz" integrity sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw== dependencies: call-bind "^1.0.8" @@ -2236,7 +2341,7 @@ object.assign@^4.0.4, object.assign@^4.1.0: object.defaults@^1.0.0, object.defaults@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/object.defaults/-/object.defaults-1.1.0.tgz#3a7f868334b407dea06da16d88d5cd29e435fecf" + resolved "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz" integrity sha512-c/K0mw/F11k4dEUBMW8naXUuBuhxRCfG7W+yFy8EcijU/rSmazOUd1XAEEe6bC0OuXY4HUKjTJv7xbxIMqdxrA== dependencies: array-each "^1.0.1" @@ -2246,7 +2351,7 @@ object.defaults@^1.0.0, object.defaults@^1.1.0: object.map@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/object.map/-/object.map-1.0.1.tgz#cf83e59dc8fcc0ad5f4250e1f78b3b81bd801d37" + resolved "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz" integrity sha512-3+mAJu2PLfnSVGHwIWubpOFLscJANBKuB/6A4CxBstc4aqwQY0FWcsppuy4jU5GSB95yES5JHSI+33AWuS4k6w== dependencies: for-own "^1.0.0" @@ -2254,14 +2359,14 @@ object.map@^1.0.0: object.pick@^1.2.0, object.pick@^1.3.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" + resolved "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz" integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== dependencies: isobject "^3.0.1" object.reduce@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/object.reduce/-/object.reduce-1.0.1.tgz#6fe348f2ac7fa0f95ca621226599096825bb03ad" + resolved "https://registry.npmjs.org/object.reduce/-/object.reduce-1.0.1.tgz" integrity sha512-naLhxxpUESbNkRqc35oQ2scZSJueHGQNUfMW/0U37IgN6tE2dgDWg3whf+NEliy3F/QysrO48XKUz/nGPe+AQw== dependencies: for-own "^1.0.0" @@ -2269,52 +2374,52 @@ object.reduce@^1.0.0: on-exit-leak-free@^2.1.0: version "2.1.2" - resolved "https://registry.yarnpkg.com/on-exit-leak-free/-/on-exit-leak-free-2.1.2.tgz#fed195c9ebddb7d9e4c3842f93f281ac8dadd3b8" + resolved "https://registry.npmjs.org/on-exit-leak-free/-/on-exit-leak-free-2.1.2.tgz" integrity sha512-0eJJY6hXLGf1udHwfNftBqH+g73EU4B504nZeKpz1sYRKafAghwxEJunB2O7rDZkL4PGfsMVnTXZ2EjibbqcsA== -on-finished@2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" - integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== - dependencies: - ee-first "1.1.1" - on-finished@~2.3.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" + resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz" integrity sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww== dependencies: ee-first "1.1.1" +on-finished@2.4.1: + version "2.4.1" + resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz" + integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== + dependencies: + ee-first "1.1.1" + once@^1.3.0, once@^1.3.1, once@^1.3.2, once@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== dependencies: wrappy "1" ordered-read-streams@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz#77c0cb37c41525d64166d990ffad7ec6a0e1363e" + resolved "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz" integrity sha512-Z87aSjx3r5c0ZB7bcJqIgIRX5bxR7A4aSzvIbaxd0oTkWBCOoKfuGHiKj60CHVUgg1Phm5yMZzBdt8XqRs73Mw== dependencies: readable-stream "^2.0.1" os-locale@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" + resolved "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz" integrity sha512-PRT7ZORmwu2MEFt4/fv3Q+mEfN4zetKxufQrkShY2oGvUms9r8otu5HfdyIFHkYXjO7laNsoVGmM2MANfuTA8g== dependencies: lcid "^1.0.0" pako@^1.0.10: version "1.0.11" - resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" + resolved "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz" integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw== parse-filepath@^1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.2.tgz#a632127f53aaf3d15876f5872f3ffac763d6c891" + resolved "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz" integrity sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q== dependencies: is-absolute "^1.0.0" @@ -2323,68 +2428,68 @@ parse-filepath@^1.0.1: parse-json@^2.2.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" + resolved "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz" integrity sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ== dependencies: error-ex "^1.2.0" parse-node-version@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/parse-node-version/-/parse-node-version-1.0.1.tgz#e2b5dbede00e7fa9bc363607f53327e8b073189b" + resolved "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz" integrity sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA== parse-passwd@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" + resolved "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz" integrity sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q== parseurl@~1.3.2, parseurl@~1.3.3: version "1.3.3" - resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" + resolved "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== pascalcase@^0.1.1: version "0.1.1" - resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" + resolved "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz" integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== path-dirname@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" + resolved "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz" integrity sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q== path-exists@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" + resolved "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz" integrity sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ== dependencies: pinkie-promise "^2.0.0" path-is-absolute@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== path-parse@^1.0.7: version "1.0.7" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== path-root-regex@^0.1.0: version "0.1.2" - resolved "https://registry.yarnpkg.com/path-root-regex/-/path-root-regex-0.1.2.tgz#bfccdc8df5b12dc52c8b43ec38d18d72c04ba96d" + resolved "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz" integrity sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ== path-root@^0.1.1: version "0.1.1" - resolved "https://registry.yarnpkg.com/path-root/-/path-root-0.1.1.tgz#9a4a6814cac1c0cd73360a95f32083c8ea4745b7" + resolved "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz" integrity sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg== dependencies: path-root-regex "^0.1.0" path-type@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" + resolved "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz" integrity sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg== dependencies: graceful-fs "^4.1.2" @@ -2393,44 +2498,44 @@ path-type@^1.0.0: pend@~1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" + resolved "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz" integrity sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg== picomatch@^2.3.1: version "2.3.1" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== picomatch@~4.0: version "4.0.2" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.2.tgz#77c742931e8f3b8820946c76cd0c1f13730d1dab" + resolved "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz" integrity sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg== pify@^2.0.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + resolved "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz" integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== pify@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" + resolved "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== pinkie-promise@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" + resolved "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" integrity sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw== dependencies: pinkie "^2.0.0" pinkie@^2.0.0: version "2.0.4" - resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" + resolved "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz" integrity sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg== pino-abstract-transport@^1.0.0, pino-abstract-transport@^1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/pino-abstract-transport/-/pino-abstract-transport-1.2.0.tgz#97f9f2631931e242da531b5c66d3079c12c9d1b5" + resolved "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-1.2.0.tgz" integrity sha512-Guhh8EZfPCfH+PMXAb6rKOjGQEoy0xlAIn+irODG5kgfYV+BQ0rGYYWTIel3P5mmyXqkYkPmdIkywsn6QKUR1Q== dependencies: readable-stream "^4.0.0" @@ -2438,7 +2543,7 @@ pino-abstract-transport@^1.0.0, pino-abstract-transport@^1.2.0: pino-pretty@~11.2: version "11.2.2" - resolved "https://registry.yarnpkg.com/pino-pretty/-/pino-pretty-11.2.2.tgz#5e8ec69b31e90eb187715af07b1d29a544e60d39" + resolved "https://registry.npmjs.org/pino-pretty/-/pino-pretty-11.2.2.tgz" integrity sha512-2FnyGir8nAJAqD3srROdrF1J5BIcMT4nwj7hHSc60El6Uxlym00UbCCd8pYIterstVBFlMyF1yFV8XdGIPbj4A== dependencies: colorette "^2.0.7" @@ -2458,12 +2563,12 @@ pino-pretty@~11.2: pino-std-serializers@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-7.0.0.tgz#7c625038b13718dbbd84ab446bd673dc52259e3b" + resolved "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-7.0.0.tgz" integrity sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA== pino@~9.2: version "9.2.0" - resolved "https://registry.yarnpkg.com/pino/-/pino-9.2.0.tgz#e77a9516f3a3e5550d9b76d9f65ac6118ef02bdd" + resolved "https://registry.npmjs.org/pino/-/pino-9.2.0.tgz" integrity sha512-g3/hpwfujK5a4oVbaefoJxezLzsDgLcNJeITvC6yrfwYeT9la+edCK42j5QpEQSQCZgTKapXvnQIdgZwvRaZug== dependencies: atomic-sleep "^1.0.0" @@ -2480,37 +2585,37 @@ pino@~9.2: posix-character-classes@^0.1.0: version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" + resolved "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz" integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== pretty-hrtime@^1.0.0: version "1.0.3" - resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" + resolved "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz" integrity sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A== process-nextick-args@^2.0.0, process-nextick-args@~2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz" integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== process-warning@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/process-warning/-/process-warning-3.0.0.tgz#96e5b88884187a1dce6f5c3166d611132058710b" + resolved "https://registry.npmjs.org/process-warning/-/process-warning-3.0.0.tgz" integrity sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ== process@^0.11.10: version "0.11.10" - resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" + resolved "https://registry.npmjs.org/process/-/process-0.11.10.tgz" integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A== -progress@~2.0: +progress@^2.0.0, progress@~2.0: version "2.0.3" - resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" + resolved "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== pump@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" + resolved "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz" integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== dependencies: end-of-stream "^1.1.0" @@ -2518,7 +2623,7 @@ pump@^2.0.0: pump@^3.0.0: version "3.0.2" - resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.2.tgz#836f3edd6bc2ee599256c924ffe0d88573ddcbf8" + resolved "https://registry.npmjs.org/pump/-/pump-3.0.2.tgz" integrity sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw== dependencies: end-of-stream "^1.1.0" @@ -2526,7 +2631,7 @@ pump@^3.0.0: pumpify@^1.3.5: version "1.5.1" - resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" + resolved "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz" integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== dependencies: duplexify "^3.6.0" @@ -2535,29 +2640,29 @@ pumpify@^1.3.5: qs@^6.4.0: version "6.14.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.0.tgz#c63fa40680d2c5c941412a0e899c89af60c0a930" + resolved "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz" integrity sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w== dependencies: side-channel "^1.1.0" queue-microtask@^1.2.2: version "1.2.3" - resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== quick-format-unescaped@^4.0.3: version "4.0.4" - resolved "https://registry.yarnpkg.com/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz#93ef6dd8d3453cbc7970dd614fad4c5954d6b5a7" + resolved "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz" integrity sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg== range-parser@~1.2.0, range-parser@~1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== raw-body@~1.1.0: version "1.1.7" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-1.1.7.tgz#1d027c2bfa116acc6623bca8f00016572a87d425" + resolved "https://registry.npmjs.org/raw-body/-/raw-body-1.1.7.tgz" integrity sha512-WmJJU2e9Y6M5UzTOkHaM7xJGAPQD8PNzx3bAd2+uhZAim6wDk6dAZxPVYLF67XhbR4hmKGh33Lpmh4XWrCH5Mg== dependencies: bytes "1" @@ -2565,7 +2670,7 @@ raw-body@~1.1.0: read-pkg-up@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" + resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz" integrity sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A== dependencies: find-up "^1.0.0" @@ -2573,25 +2678,16 @@ read-pkg-up@^1.0.1: read-pkg@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" + resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz" integrity sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ== dependencies: load-json-file "^1.0.0" normalize-package-data "^2.3.2" path-type "^1.0.0" -readable-stream@3, readable-stream@^3.4.0: - version "3.6.2" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" - integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== - dependencies: - inherits "^2.0.3" - string_decoder "^1.1.1" - util-deprecate "^1.0.1" - readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@~2.3.6: version "2.3.8" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz" integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== dependencies: core-util-is "~1.0.0" @@ -2602,9 +2698,18 @@ readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable string_decoder "~1.1.1" util-deprecate "~1.0.1" +readable-stream@^3.4.0: + version "3.6.2" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz" + integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + readable-stream@^4.0.0: version "4.7.0" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-4.7.0.tgz#cedbd8a1146c13dfff8dab14068028d58c15ac91" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-4.7.0.tgz" integrity sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg== dependencies: abort-controller "^3.0.0" @@ -2613,9 +2718,18 @@ readable-stream@^4.0.0: process "^0.11.10" string_decoder "^1.3.0" +readable-stream@3: + version "3.6.2" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz" + integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + readdirp@^2.2.1: version "2.2.1" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" + resolved "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz" integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== dependencies: graceful-fs "^4.1.11" @@ -2624,19 +2738,19 @@ readdirp@^2.2.1: real-require@^0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/real-require/-/real-require-0.2.0.tgz#209632dea1810be2ae063a6ac084fee7e33fba78" + resolved "https://registry.npmjs.org/real-require/-/real-require-0.2.0.tgz" integrity sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg== rechoir@^0.6.2: version "0.6.2" - resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" + resolved "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz" integrity sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw== dependencies: resolve "^1.1.6" regex-not@^1.0.0, regex-not@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" + resolved "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz" integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== dependencies: extend-shallow "^3.0.2" @@ -2644,7 +2758,7 @@ regex-not@^1.0.0, regex-not@^1.0.2: remove-bom-buffer@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz#c2bf1e377520d324f623892e33c10cac2c252b53" + resolved "https://registry.npmjs.org/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz" integrity sha512-8v2rWhaakv18qcvNeli2mZ/TMTL2nEyAKRvzo1WtnZBl15SHyEhrCu2/xKlJyUFKHiHgfXIyuY6g2dObJJycXQ== dependencies: is-buffer "^1.1.5" @@ -2652,7 +2766,7 @@ remove-bom-buffer@^3.0.0: remove-bom-stream@^1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/remove-bom-stream/-/remove-bom-stream-1.2.0.tgz#05f1a593f16e42e1fb90ebf59de8e569525f9523" + resolved "https://registry.npmjs.org/remove-bom-stream/-/remove-bom-stream-1.2.0.tgz" integrity sha512-wigO8/O08XHb8YPzpDDT+QmRANfW6vLqxfaXm1YXhnFf3AkSLyjfG3GEFg4McZkmgL7KvCj5u2KczkvSP6NfHA== dependencies: remove-bom-buffer "^3.0.0" @@ -2661,32 +2775,32 @@ remove-bom-stream@^1.2.0: remove-trailing-separator@^1.0.1, remove-trailing-separator@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" + resolved "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz" integrity sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw== repeat-element@^1.1.2: version "1.1.4" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9" + resolved "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz" integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ== repeat-string@^1.6.1: version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" + resolved "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz" integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== replace-ext@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.1.tgz#2d6d996d04a15855d967443631dd5f77825b016a" + resolved "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.1.tgz" integrity sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw== replace-ext@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-2.0.0.tgz#9471c213d22e1bcc26717cd6e50881d88f812b06" + resolved "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz" integrity sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug== replace-homedir@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/replace-homedir/-/replace-homedir-1.0.0.tgz#e87f6d513b928dde808260c12be7fec6ff6e798c" + resolved "https://registry.npmjs.org/replace-homedir/-/replace-homedir-1.0.0.tgz" integrity sha512-CHPV/GAglbIB1tnQgaiysb8H2yCy8WQ7lcEwQ/eT+kLj0QHV8LnJW0zpqpE7RSkrMSRoa+EBoag86clf7WAgSg== dependencies: homedir-polyfill "^1.0.1" @@ -2695,22 +2809,22 @@ replace-homedir@^1.0.0: require-directory@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== require-from-string@~2.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + resolved "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz" integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== require-main-filename@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" + resolved "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz" integrity sha512-IqSUtOVP4ksd1C/ej5zeEh/BIP2ajqpn8c5x+q99gvcIG/Qf0cud5raVnE/Dwd0ua9TXYDoDc0RE5hBSdz22Ug== resolve-dir@^1.0.0, resolve-dir@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" + resolved "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz" integrity sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg== dependencies: expand-tilde "^2.0.0" @@ -2718,19 +2832,19 @@ resolve-dir@^1.0.0, resolve-dir@^1.0.1: resolve-options@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/resolve-options/-/resolve-options-1.1.0.tgz#32bb9e39c06d67338dc9378c0d6d6074566ad131" + resolved "https://registry.npmjs.org/resolve-options/-/resolve-options-1.1.0.tgz" integrity sha512-NYDgziiroVeDC29xq7bp/CacZERYsA9bXYd1ZmcJlF3BcrZv5pTb4NG7SjdyKDnXZ84aC4vo2u6sNKIA1LCu/A== dependencies: value-or-function "^3.0.0" resolve-url@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" + resolved "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz" integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.4.0: version "1.22.10" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.10.tgz#b663e83ffb09bbf2386944736baae803029b8b39" + resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz" integrity sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w== dependencies: is-core-module "^2.16.0" @@ -2739,87 +2853,68 @@ resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.4.0: ret@~0.1.10: version "0.1.15" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" + resolved "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz" integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== reusify@^1.0.4: version "1.1.0" - resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.1.0.tgz#0fe13b9522e1473f51b558ee796e08f11f9b489f" + resolved "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz" integrity sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw== run-parallel@^1.1.9: version "1.2.0" - resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz" integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== dependencies: queue-microtask "^1.2.2" -safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.2.0: - version "5.2.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" - integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== - -safe-buffer@~5.1.0, safe-buffer@~5.1.1: +safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@>=5.1.0, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== +safe-buffer@~5.2.0: + version "5.2.1" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + safe-json-parse@~1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/safe-json-parse/-/safe-json-parse-1.0.1.tgz#3e76723e38dfdda13c9b1d29a1e07ffee4b30b57" + resolved "https://registry.npmjs.org/safe-json-parse/-/safe-json-parse-1.0.1.tgz" integrity sha512-o0JmTu17WGUaUOHa1l0FPGXKBfijbxK6qoHzlkihsDXxzBHvJcA7zgviKR92Xs841rX9pK16unfphLq0/KqX7A== safe-regex@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" + resolved "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz" integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== dependencies: ret "~0.1.10" safe-stable-stringify@^2.3.1: version "2.5.0" - resolved "https://registry.yarnpkg.com/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz#4ca2f8e385f2831c432a719b108a3bf7af42a1dd" + resolved "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz" integrity sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA== secure-json-parse@^2.4.0: version "2.7.0" - resolved "https://registry.yarnpkg.com/secure-json-parse/-/secure-json-parse-2.7.0.tgz#5a5f9cd6ae47df23dba3151edd06855d47e09862" + resolved "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-2.7.0.tgz" integrity sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw== semver-greatest-satisfied-range@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-1.1.0.tgz#13e8c2658ab9691cb0cd71093240280d36f77a5b" + resolved "https://registry.npmjs.org/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-1.1.0.tgz" integrity sha512-Ny/iyOzSSa8M5ML46IAx3iXc6tfOsYU2R4AXi2UpHk60Zrgyq6eqPj/xiOfS0rRl/iiQ/rdJkVjw/5cdUyCntQ== dependencies: sver-compat "^1.5.0" "semver@2 || 3 || 4 || 5": version "5.7.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" + resolved "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz" integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== -send@0.19.0: - version "0.19.0" - resolved "https://registry.yarnpkg.com/send/-/send-0.19.0.tgz#bbc5a388c8ea6c048967049dbeac0e4a3f09d7f8" - integrity sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw== - dependencies: - debug "2.6.9" - depd "2.0.0" - destroy "1.2.0" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - fresh "0.5.2" - http-errors "2.0.0" - mime "1.6.0" - ms "2.1.3" - on-finished "2.4.1" - range-parser "~1.2.1" - statuses "2.0.1" - send@^0.16.2: version "0.16.2" - resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1" + resolved "https://registry.npmjs.org/send/-/send-0.16.2.tgz" integrity sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw== dependencies: debug "2.6.9" @@ -2836,9 +2931,28 @@ send@^0.16.2: range-parser "~1.2.0" statuses "~1.4.0" +send@0.19.0: + version "0.19.0" + resolved "https://registry.npmjs.org/send/-/send-0.19.0.tgz" + integrity sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw== + dependencies: + debug "2.6.9" + depd "2.0.0" + destroy "1.2.0" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + fresh "0.5.2" + http-errors "2.0.0" + mime "1.6.0" + ms "2.1.3" + on-finished "2.4.1" + range-parser "~1.2.1" + statuses "2.0.1" + serve-index@^1.9.1: version "1.9.1" - resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" + resolved "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz" integrity sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw== dependencies: accepts "~1.3.4" @@ -2851,7 +2965,7 @@ serve-index@^1.9.1: serve-static@^1.13.2: version "1.16.2" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.16.2.tgz#b6a5343da47f6bdd2673848bf45754941e803296" + resolved "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz" integrity sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw== dependencies: encodeurl "~2.0.0" @@ -2861,12 +2975,12 @@ serve-static@^1.13.2: set-blocking@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + resolved "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz" integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== set-function-length@^1.2.2: version "1.2.2" - resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" + resolved "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz" integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== dependencies: define-data-property "^1.1.4" @@ -2878,7 +2992,7 @@ set-function-length@^1.2.2: set-value@^2.0.0, set-value@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" + resolved "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz" integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== dependencies: extend-shallow "^2.0.1" @@ -2888,17 +3002,17 @@ set-value@^2.0.0, set-value@^2.0.1: setprototypeof@1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" + resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz" integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== setprototypeof@1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" + resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz" integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== sha.js@^2.4.9: version "2.4.11" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" + resolved "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz" integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== dependencies: inherits "^2.0.1" @@ -2906,12 +3020,12 @@ sha.js@^2.4.9: should-proxy@~1.0: version "1.0.4" - resolved "https://registry.yarnpkg.com/should-proxy/-/should-proxy-1.0.4.tgz#c805a501abf69539600634809e62fbf238ba35e4" + resolved "https://registry.npmjs.org/should-proxy/-/should-proxy-1.0.4.tgz" integrity sha512-RPQhIndEIVUCjkfkQ6rs6sOR6pkxJWCNdxtfG5pP0RVgUYbK5911kLTF0TNcCC0G3YCGd492rMollFT2aTd9iQ== side-channel-list@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/side-channel-list/-/side-channel-list-1.0.0.tgz#10cb5984263115d3b7a0e336591e290a830af8ad" + resolved "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz" integrity sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA== dependencies: es-errors "^1.3.0" @@ -2919,7 +3033,7 @@ side-channel-list@^1.0.0: side-channel-map@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/side-channel-map/-/side-channel-map-1.0.1.tgz#d6bb6b37902c6fef5174e5f533fab4c732a26f42" + resolved "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz" integrity sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA== dependencies: call-bound "^1.0.2" @@ -2929,7 +3043,7 @@ side-channel-map@^1.0.1: side-channel-weakmap@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz#11dda19d5368e40ce9ec2bdc1fb0ecbc0790ecea" + resolved "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz" integrity sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A== dependencies: call-bound "^1.0.2" @@ -2940,7 +3054,7 @@ side-channel-weakmap@^1.0.2: side-channel@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.1.0.tgz#c3fcff9c4da932784873335ec9765fa94ff66bc9" + resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz" integrity sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw== dependencies: es-errors "^1.3.0" @@ -2951,12 +3065,12 @@ side-channel@^1.1.0: simple-concat@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.1.tgz#f46976082ba35c2263f1c8ab5edfe26c41c9552f" + resolved "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz" integrity sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q== simple-get@^4.0.1, simple-get@~4.0: version "4.0.1" - resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-4.0.1.tgz#4a39db549287c979d352112fa03fd99fd6bc3543" + resolved "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz" integrity sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA== dependencies: decompress-response "^6.0.0" @@ -2965,7 +3079,7 @@ simple-get@^4.0.1, simple-get@~4.0: snapdragon-node@^2.0.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" + resolved "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz" integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== dependencies: define-property "^1.0.0" @@ -2974,14 +3088,14 @@ snapdragon-node@^2.0.1: snapdragon-util@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" + resolved "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz" integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== dependencies: kind-of "^3.2.0" snapdragon@^0.8.1: version "0.8.2" - resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" + resolved "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz" integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== dependencies: base "^0.11.1" @@ -2993,23 +3107,16 @@ snapdragon@^0.8.1: source-map-resolve "^0.5.0" use "^3.1.0" -sonic-boom@^4.0.1: - version "4.2.0" - resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-4.2.0.tgz#e59a525f831210fa4ef1896428338641ac1c124d" - integrity sha512-INb7TM37/mAcsGmc9hyyI6+QR3rR1zVRu36B0NeGXKnOOLiZOfER5SA+N7X7k3yUYRzLWafduTDvJAfDswwEww== - dependencies: - atomic-sleep "^1.0.0" - -sonic-boom@~4.0: +sonic-boom@^4.0.1, sonic-boom@~4.0: version "4.0.1" - resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-4.0.1.tgz#515b7cef2c9290cb362c4536388ddeece07aed30" + resolved "https://registry.npmjs.org/sonic-boom/-/sonic-boom-4.0.1.tgz" integrity sha512-hTSD/6JMLyT4r9zeof6UtuBDpjJ9sO08/nmS5djaA9eozT9oOlNdpXSnzcgj4FTqpk3nkLrs61l4gip9r1HCrQ== dependencies: atomic-sleep "^1.0.0" source-map-resolve@^0.5.0: version "0.5.3" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" + resolved "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz" integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== dependencies: atob "^2.1.2" @@ -3020,27 +3127,27 @@ source-map-resolve@^0.5.0: source-map-url@^0.4.0: version "0.4.1" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" + resolved "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz" integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== source-map@^0.5.6: version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz" integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== source-map@^0.6.1: version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== sparkles@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.1.tgz#008db65edce6c50eec0c5e228e1945061dd0437c" + resolved "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz" integrity sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw== spdx-correct@^3.0.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.2.0.tgz#4f5ab0668f0059e34f9c00dce331784a12de4e9c" + resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz" integrity sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA== dependencies: spdx-expression-parse "^3.0.0" @@ -3048,12 +3155,12 @@ spdx-correct@^3.0.0: spdx-exceptions@^2.1.0: version "2.5.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz#5d607d27fc806f66d7b64a766650fa890f04ed66" + resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz" integrity sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w== spdx-expression-parse@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" + resolved "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz" integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== dependencies: spdx-exceptions "^2.1.0" @@ -3061,62 +3168,62 @@ spdx-expression-parse@^3.0.0: spdx-license-ids@^3.0.0: version "3.0.21" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.21.tgz#6d6e980c9df2b6fc905343a3b2d702a6239536c3" + resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.21.tgz" integrity sha512-Bvg/8F5XephndSK3JffaRqdT+gyhfqIPwDHpX80tJrF8QQRYMo8sNMeaZ2Dp5+jhwKnUmIOyFFQfHRkjJm5nXg== split-string@^3.0.1, split-string@^3.0.2: version "3.1.0" - resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" + resolved "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz" integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== dependencies: extend-shallow "^3.0.0" split2@^4.0.0: version "4.2.0" - resolved "https://registry.yarnpkg.com/split2/-/split2-4.2.0.tgz#c9c5920904d148bab0b9f67145f245a86aadbfa4" + resolved "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz" integrity sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg== stack-trace@0.0.10: version "0.0.10" - resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" + resolved "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz" integrity sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg== static-extend@^0.1.1: version "0.1.2" - resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" + resolved "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz" integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g== dependencies: define-property "^0.2.5" object-copy "^0.1.0" -statuses@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" - integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== - "statuses@>= 1.4.0 < 2", statuses@~1.5.0: version "1.5.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" + resolved "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz" integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== statuses@~1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" + resolved "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz" integrity sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew== +statuses@2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz" + integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== + stream-exhaust@^1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/stream-exhaust/-/stream-exhaust-1.0.2.tgz#acdac8da59ef2bc1e17a2c0ccf6c320d120e555d" + resolved "https://registry.npmjs.org/stream-exhaust/-/stream-exhaust-1.0.2.tgz" integrity sha512-b/qaq/GlBK5xaq1yrK9/zFcyRSTNxmcZwFLGSTG0mXgZl/4Z6GgiyYOXOvY7N3eEvFRAG1bkDRz5EPGSvPYQlw== stream-shift@^1.0.0: version "1.0.3" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.3.tgz#85b8fab4d71010fc3ba8772e8046cc49b8a3864b" + resolved "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.3.tgz" integrity sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ== streamx@^2.12.5: version "2.22.0" - resolved "https://registry.yarnpkg.com/streamx/-/streamx-2.22.0.tgz#cd7b5e57c95aaef0ff9b2aef7905afa62ec6e4a7" + resolved "https://registry.npmjs.org/streamx/-/streamx-2.22.0.tgz" integrity sha512-sLh1evHOzBy/iWRiR6d1zRcLao4gGZr3C1kzNz4fopCOKJb6xD9ub8Mpi9Mr1R6id5o43S+d93fI48UC5uM9aw== dependencies: fast-fifo "^1.3.2" @@ -3124,66 +3231,66 @@ streamx@^2.12.5: optionalDependencies: bare-events "^2.2.0" +string_decoder@^1.1.1, string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + dependencies: + safe-buffer "~5.1.0" + +string_decoder@^1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + +string_decoder@0.10: + version "0.10.31" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + integrity sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ== + string-template@~0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/string-template/-/string-template-0.2.1.tgz#42932e598a352d01fc22ec3367d9d84eec6c9add" + resolved "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz" integrity sha512-Yptehjogou2xm4UJbxJ4CxgZx12HBfeystp0y3x7s4Dj32ltVVG1Gg8YhKjHZkHicuKpZX/ffilA8505VbUbpw== string-width@^1.0.1, string-width@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" + resolved "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz" integrity sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw== dependencies: code-point-at "^1.0.0" is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" -string_decoder@0.10: - version "0.10.31" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" - integrity sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ== - -string_decoder@^1.1.1, string_decoder@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" - integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== - dependencies: - safe-buffer "~5.2.0" - -string_decoder@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" - integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== - dependencies: - safe-buffer "~5.1.0" - strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz" integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg== dependencies: ansi-regex "^2.0.0" strip-bom@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" + resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz" integrity sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g== dependencies: is-utf8 "^0.2.0" strip-json-comments@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== supports-preserve-symlinks-flag@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== sver-compat@^1.5.0: version "1.5.0" - resolved "https://registry.yarnpkg.com/sver-compat/-/sver-compat-1.5.0.tgz#3cf87dfeb4d07b4a3f14827bc186b3fd0c645cd8" + resolved "https://registry.npmjs.org/sver-compat/-/sver-compat-1.5.0.tgz" integrity sha512-aFTHfmjwizMNlNE6dsGmoAM4lHjL0CyiobWaFiXWSlD7cIxshW422Nb8KbXCmR6z+0ZEPY+daXJrDyh/vuwTyg== dependencies: es6-iterator "^2.0.1" @@ -3191,35 +3298,35 @@ sver-compat@^1.5.0: teex@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/teex/-/teex-1.0.1.tgz#b8fa7245ef8e8effa8078281946c85ab780a0b12" + resolved "https://registry.npmjs.org/teex/-/teex-1.0.1.tgz" integrity sha512-eYE6iEI62Ni1H8oIa7KlDU6uQBtqr4Eajni3wX7rpfXD8ysFx8z0+dri+KWEPWpBsxXfxu58x/0jvTVT1ekOSg== dependencies: streamx "^2.12.5" text-decoder@^1.1.0: version "1.2.3" - resolved "https://registry.yarnpkg.com/text-decoder/-/text-decoder-1.2.3.tgz#b19da364d981b2326d5f43099c310cc80d770c65" + resolved "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.3.tgz" integrity sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA== dependencies: b4a "^1.6.4" thread-stream@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/thread-stream/-/thread-stream-3.1.0.tgz#4b2ef252a7c215064507d4ef70c05a5e2d34c4f1" + resolved "https://registry.npmjs.org/thread-stream/-/thread-stream-3.1.0.tgz" integrity sha512-OqyPZ9u96VohAyMfJykzmivOrY2wfMSf3C5TtFJVgN+Hm6aj+voFhlK+kZEIv2FBh1X6Xp3DlnCOfEQ3B2J86A== dependencies: real-require "^0.2.0" through2-filter@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/through2-filter/-/through2-filter-3.1.0.tgz#4a1b45d2b76b3ac93ec137951e372c268efc1a4e" + resolved "https://registry.npmjs.org/through2-filter/-/through2-filter-3.1.0.tgz" integrity sha512-VhZsTsfrIJjyUi6GeecnwcOJlmoqgIdGFDjqnV5ape+F1DN8GejfPO66XyIhoinxmxGImiUTrq9RwpTN5yszGA== dependencies: through2 "^4.0.2" through2@^2.0.0, through2@^2.0.3: version "2.0.5" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" + resolved "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz" integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== dependencies: readable-stream "~2.3.6" @@ -3227,19 +3334,19 @@ through2@^2.0.0, through2@^2.0.3: through2@^4.0.2: version "4.0.2" - resolved "https://registry.yarnpkg.com/through2/-/through2-4.0.2.tgz#a7ce3ac2a7a8b0b966c80e7c49f0484c3b239764" + resolved "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz" integrity sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw== dependencies: readable-stream "3" time-stamp@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.1.0.tgz#764a5a11af50561921b133f3b44e618687e0f5c3" + resolved "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz" integrity sha512-gLCeArryy2yNTRzTGKbZbloctj64jkZ57hj5zdraXue6aFgd6PmvVtEyiUU+hvU0v7q08oVv8r8ev0tRo6bvgw== tiny-lr@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/tiny-lr/-/tiny-lr-1.1.1.tgz#9fa547412f238fedb068ee295af8b682c98b2aab" + resolved "https://registry.npmjs.org/tiny-lr/-/tiny-lr-1.1.1.tgz" integrity sha512-44yhA3tsaRoMOjQQ+5v5mVdqef+kH6Qze9jTpqtVufgYjYt08zyZAwNwwVBj3i1rJMnR52IxOW0LK0vBzgAkuA== dependencies: body "^5.1.0" @@ -3251,7 +3358,7 @@ tiny-lr@^1.1.1: to-absolute-glob@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz#1865f43d9e74b0822db9f145b78cff7d0f7c849b" + resolved "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz" integrity sha512-rtwLUQEwT8ZeKQbyFJyomBRYXyE16U5VKuy0ftxLMK/PZb2fkOsg5r9kHdauuVDbsNdIBoC/HCthpidamQFXYA== dependencies: is-absolute "^1.0.0" @@ -3259,14 +3366,14 @@ to-absolute-glob@^2.0.0: to-object-path@^0.3.0: version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" + resolved "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz" integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg== dependencies: kind-of "^3.0.2" to-regex-range@^2.1.0: version "2.1.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" + resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz" integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg== dependencies: is-number "^3.0.0" @@ -3274,14 +3381,14 @@ to-regex-range@^2.1.0: to-regex-range@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz" integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== dependencies: is-number "^7.0.0" to-regex@^3.0.1, to-regex@^3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" + resolved "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz" integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== dependencies: define-property "^2.0.2" @@ -3291,44 +3398,44 @@ to-regex@^3.0.1, to-regex@^3.0.2: to-through@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/to-through/-/to-through-2.0.0.tgz#fc92adaba072647bc0b67d6b03664aa195093af6" + resolved "https://registry.npmjs.org/to-through/-/to-through-2.0.0.tgz" integrity sha512-+QIz37Ly7acM4EMdw2PRN389OneM5+d844tirkGp4dPKzI5OE72V9OsbFp+CIYJDahZ41ZV05hNtcPAQUAm9/Q== dependencies: through2 "^2.0.3" toidentifier@1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" + resolved "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz" integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== type@^2.7.2: version "2.7.3" - resolved "https://registry.yarnpkg.com/type/-/type-2.7.3.tgz#436981652129285cc3ba94f392886c2637ea0486" + resolved "https://registry.npmjs.org/type/-/type-2.7.3.tgz" integrity sha512-8j+1QmAbPvLZow5Qpi6NCaN8FB60p/6x8/vfNqOk/hC+HuvFZhL4+WfekuhQLiqFZXOgQdrs3B+XxEmCc6b3FQ== typedarray@^0.0.6: version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + resolved "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz" integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA== uglify-js@^3.1.4: version "3.19.3" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.19.3.tgz#82315e9bbc6f2b25888858acd1fff8441035b77f" + resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.3.tgz" integrity sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ== unc-path-regex@^0.1.2: version "0.1.2" - resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" + resolved "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz" integrity sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg== undertaker-registry@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/undertaker-registry/-/undertaker-registry-1.0.1.tgz#5e4bda308e4a8a2ae584f9b9a4359a499825cc50" + resolved "https://registry.npmjs.org/undertaker-registry/-/undertaker-registry-1.0.1.tgz" integrity sha512-UR1khWeAjugW3548EfQmL9Z7pGMlBgXteQpr1IZeZBtnkCJQJIJ1Scj0mb9wQaPvUZ9Q17XqW6TIaPchJkyfqw== undertaker@^1.2.1: version "1.3.0" - resolved "https://registry.yarnpkg.com/undertaker/-/undertaker-1.3.0.tgz#363a6e541f27954d5791d6fa3c1d321666f86d18" + resolved "https://registry.npmjs.org/undertaker/-/undertaker-1.3.0.tgz" integrity sha512-/RXwi5m/Mu3H6IHQGww3GNt1PNXlbeCuclF2QYR14L/2CHPz3DFZkvB5hZ0N/QUkiXWCACML2jXViIQEQc2MLg== dependencies: arr-flatten "^1.0.1" @@ -3344,7 +3451,7 @@ undertaker@^1.2.1: union-value@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" + resolved "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz" integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== dependencies: arr-union "^3.1.0" @@ -3354,7 +3461,7 @@ union-value@^1.0.0: unique-stream@^2.0.2: version "2.3.1" - resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-2.3.1.tgz#c65d110e9a4adf9a6c5948b28053d9a8d04cbeac" + resolved "https://registry.npmjs.org/unique-stream/-/unique-stream-2.3.1.tgz" integrity sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A== dependencies: json-stable-stringify-without-jsonify "^1.0.1" @@ -3362,12 +3469,12 @@ unique-stream@^2.0.2: unpipe@~1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + resolved "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== unset-value@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" + resolved "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz" integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ== dependencies: has-value "^0.3.1" @@ -3375,44 +3482,44 @@ unset-value@^1.0.0: unxhr@1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/unxhr/-/unxhr-1.0.1.tgz#92200322d66c728993de771f9e01eeb21f41bc7b" + resolved "https://registry.npmjs.org/unxhr/-/unxhr-1.0.1.tgz" integrity sha512-MAhukhVHyaLGDjyDYhy8gVjWJyhTECCdNsLwlMoGFoNJ3o79fpQhtQuzmAE4IxCMDwraF4cW8ZjpAV0m9CRQbg== upath@^1.1.1: version "1.2.0" - resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" + resolved "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz" integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== urix@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" + resolved "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz" integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== use@^3.1.0: version "3.1.1" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" + resolved "https://registry.npmjs.org/use/-/use-3.1.1.tgz" integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== util-deprecate@^1.0.1, util-deprecate@~1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== utils-merge@1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + resolved "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz" integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== v8flags@^3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-3.2.0.tgz#b243e3b4dfd731fa774e7492128109a0fe66d656" + resolved "https://registry.npmjs.org/v8flags/-/v8flags-3.2.0.tgz" integrity sha512-mH8etigqMfiGWdeXpaaqGfs6BndypxusHHcv2qSHyZkGEznCd/qAXCWWRzeowtL54147cktFOC4P5y+kl8d8Jg== dependencies: homedir-polyfill "^1.0.1" validate-npm-package-license@^3.0.1: version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" + resolved "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz" integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== dependencies: spdx-correct "^3.0.0" @@ -3420,12 +3527,12 @@ validate-npm-package-license@^3.0.1: value-or-function@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/value-or-function/-/value-or-function-3.0.0.tgz#1c243a50b595c1be54a754bfece8563b9ff8d813" + resolved "https://registry.npmjs.org/value-or-function/-/value-or-function-3.0.0.tgz" integrity sha512-jdBB2FrWvQC/pnPtIqcLsMaQgjhdb6B7tk1MMyTKapox+tQZbdRP4uLxu/JY0t7fbfDCUMnuelzEYv5GsxHhdg== vinyl-fs@^3.0.0: version "3.0.3" - resolved "https://registry.yarnpkg.com/vinyl-fs/-/vinyl-fs-3.0.3.tgz#c85849405f67428feabbbd5c5dbdd64f47d31bc7" + resolved "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-3.0.3.tgz" integrity sha512-vIu34EkyNyJxmP0jscNzWBSygh7VWhqun6RmqVfXePrOwi9lhvRs//dOaGOTRUQr4tx7/zd26Tk5WeSVZitgng== dependencies: fs-mkdirp-stream "^1.0.0" @@ -3448,7 +3555,7 @@ vinyl-fs@^3.0.0: vinyl-sourcemap@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/vinyl-sourcemap/-/vinyl-sourcemap-1.1.0.tgz#92a800593a38703a8cdb11d8b300ad4be63b3e16" + resolved "https://registry.npmjs.org/vinyl-sourcemap/-/vinyl-sourcemap-1.1.0.tgz" integrity sha512-NiibMgt6VJGJmyw7vtzhctDcfKch4e4n9TBeoWlirb7FMg9/1Ov9k+A5ZRAtywBpRPiyECvQRQllYM8dECegVA== dependencies: append-buffer "^1.0.2" @@ -3461,7 +3568,7 @@ vinyl-sourcemap@^1.1.0: vinyl@^2.0.0: version "2.2.1" - resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-2.2.1.tgz#23cfb8bbab5ece3803aa2c0a1eb28af7cbba1974" + resolved "https://registry.npmjs.org/vinyl/-/vinyl-2.2.1.tgz" integrity sha512-LII3bXRFBZLlezoG5FfZVcXflZgWP/4dCwKtxd5ky9+LOtM4CS3bIRQsmR1KMnMW07jpE8fqR2lcxPZ+8sJIcw== dependencies: clone "^2.1.1" @@ -3473,7 +3580,7 @@ vinyl@^2.0.0: vinyl@~3.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-3.0.0.tgz#11e14732bf56e2faa98ffde5157fe6c13259ff30" + resolved "https://registry.npmjs.org/vinyl/-/vinyl-3.0.0.tgz" integrity sha512-rC2VRfAVVCGEgjnxHUnpIVh3AGuk62rP3tqVrn+yab0YH7UULisC085+NYH+mnqf3Wx4SpSi1RQMwudL89N03g== dependencies: clone "^2.1.2" @@ -3484,7 +3591,7 @@ vinyl@~3.0: websocket-driver@>=0.5.1: version "0.7.4" - resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.4.tgz#89ad5295bbf64b480abcba31e4953aca706f5760" + resolved "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz" integrity sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg== dependencies: http-parser-js ">=0.5.1" @@ -3493,29 +3600,29 @@ websocket-driver@>=0.5.1: websocket-extensions@>=0.1.1: version "0.1.4" - resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz#7f8473bc839dfd87608adb95d7eb075211578a42" + resolved "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz" integrity sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg== which-module@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" + resolved "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz" integrity sha512-F6+WgncZi/mJDrammbTuHe1q0R5hOXv/mBaiNA2TCNT/LTHusX0V+CJnj9XT8ki5ln2UZyyddDgHfCzyrOH7MQ== which@^1.2.14: version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" + resolved "https://registry.npmjs.org/which/-/which-1.3.1.tgz" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== dependencies: isexe "^2.0.0" wordwrap@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" + resolved "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz" integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q== wrap-ansi@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" + resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz" integrity sha512-vAaEaDM946gbNpH5pLVNR+vX2ht6n0Bt3GXwVB1AuAqZosOvHNF3P7wDnh8KLkSqgUh0uh77le7Owgoz+Z9XBw== dependencies: string-width "^1.0.1" @@ -3523,32 +3630,32 @@ wrap-ansi@^2.0.0: wrappy@1: version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== xdg-basedir@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4" + resolved "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz" integrity sha512-1Dly4xqlulvPD3fZUQJLY+FUIeqN3N2MM3uqe4rCJftAvOjFa3jFGfctOgluGx4ahPbUCsZkmJILiP0Vi4T6lQ== xtend@~4.0.1: version "4.0.2" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + resolved "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== y18n@^3.2.1: version "3.2.2" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.2.tgz#85c901bd6470ce71fc4bb723ad209b70f7f28696" + resolved "https://registry.npmjs.org/y18n/-/y18n-3.2.2.tgz" integrity sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ== yargs-parser@^20.2.7: version "20.2.9" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== yargs-parser@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.1.tgz#7ede329c1d8cdbbe209bd25cdb990e9b1ebbb394" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.1.tgz" integrity sha512-wpav5XYiddjXxirPoCTUPbqM0PXvJ9hiBMvuJgInvo4/lAOTZzUprArw17q2O1P2+GHhbBr18/iQwjL5Z9BqfA== dependencies: camelcase "^3.0.0" @@ -3556,7 +3663,7 @@ yargs-parser@^5.0.1: yargs@^7.1.0: version "7.1.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.2.tgz#63a0a5d42143879fdbb30370741374e0641d55db" + resolved "https://registry.npmjs.org/yargs/-/yargs-7.1.2.tgz" integrity sha512-ZEjj/dQYQy0Zx0lgLMLR8QuaqTihnxirir7EwUHp1Axq4e3+k8jXU5K0VLbNvedv1f4EWtBonDIZm0NUr+jCcA== dependencies: camelcase "^3.0.0" @@ -3575,7 +3682,7 @@ yargs@^7.1.0: yauzl@~3.1: version "3.1.3" - resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-3.1.3.tgz#f61c17ad1a09403bc7adb01dfb302a9e74bf4a50" + resolved "https://registry.npmjs.org/yauzl/-/yauzl-3.1.3.tgz" integrity sha512-JCCdmlJJWv7L0q/KylOekyRaUrdEoUxWkWVcgorosTROCFWiS9p2NNPE9Yb91ak7b1N5SxAZEliWpspbZccivw== dependencies: buffer-crc32 "~0.2.3" @@ -3583,7 +3690,7 @@ yauzl@~3.1: yazl@~2.5: version "2.5.1" - resolved "https://registry.yarnpkg.com/yazl/-/yazl-2.5.1.tgz#a3d65d3dd659a5b0937850e8609f22fffa2b5c35" + resolved "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz" integrity sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw== dependencies: buffer-crc32 "~0.2.3"