From 5cf3da14885ba58698b4192df54d308cc8bc4406 Mon Sep 17 00:00:00 2001 From: Serreau Jovann Date: Sat, 2 Aug 2025 10:45:16 +0200 Subject: [PATCH] =?UTF-8?q?```=20=E2=9C=A8=20feat(newsletter):=20Ajoute=20?= =?UTF-8?q?l'=C3=A9diteur=20de=20template=20d'email=20avec=20Preact?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Crée un nouvel éditeur de template d'email en utilisant Preact et react-email-editor, et l'intègre au contrôleur et aux vues. ``` --- assets/admin.js | 3 + assets/admin.scss | 5 + assets/class/MainframeEmailEditor.jsx | 38 + assets/functions/preact.js | 152 ++ bun.lockb | Bin 107148 -> 154314 bytes migrations/Version20250801135113.php | 36 + package.json | 5 + .../Artemis/Newsletter/TemplateController.php | 36 + src/Entity/Newsletter/Template.php | 8 +- src/Form/Artemis/Newsletter/TemplateType.php | 29 + templates/artemis/newsletter/template.twig | 2 +- .../artemis/newsletter/template/editor.twig | 38 + vite.config.js | 2 + yarn.lock | 2187 +++++++++++++++++ 14 files changed, 2536 insertions(+), 5 deletions(-) create mode 100644 assets/class/MainframeEmailEditor.jsx create mode 100644 assets/functions/preact.js create mode 100644 migrations/Version20250801135113.php create mode 100644 src/Form/Artemis/Newsletter/TemplateType.php create mode 100644 templates/artemis/newsletter/template/editor.twig create mode 100644 yarn.lock diff --git a/assets/admin.js b/assets/admin.js index b09c8fe..9e99d4e 100644 --- a/assets/admin.js +++ b/assets/admin.js @@ -5,6 +5,8 @@ import {ServerCard} from './class/ServerCard' import {AutoCustomer} from './class/AutoCustomer' import {RepeatLine} from './class/RepeatLine' import {OrderCtrl} from './class/OrderCtrl' +import {MainframeEmailEditor} from './class/MainframeEmailEditor' +import preactCustomElement from './functions/preact' function script() { @@ -13,6 +15,7 @@ function script() { customElements.define('auto-customer',AutoCustomer,{extends:'button'}) customElements.define('repeat-line',RepeatLine,{extends:'div'}) customElements.define('order-ctrl',OrderCtrl,{extends:'div'}) + preactCustomElement("email-builder",MainframeEmailEditor) } diff --git a/assets/admin.scss b/assets/admin.scss index c26950a..dd6bef8 100644 --- a/assets/admin.scss +++ b/assets/admin.scss @@ -36,3 +36,8 @@ input { padding: 0.5rem; } } + +#ee { + display: block; + height: 100%; +} diff --git a/assets/class/MainframeEmailEditor.jsx b/assets/class/MainframeEmailEditor.jsx new file mode 100644 index 0000000..ba22551 --- /dev/null +++ b/assets/class/MainframeEmailEditor.jsx @@ -0,0 +1,38 @@ +import EmailEditor, { EditorRef, EmailEditorProps } from 'react-email-editor'; +import { useRef } from 'preact/hooks'; + +export function MainframeEmailEditor() { + const emailEditorRef = useRef(null); + + const exportHtml = (e) => { + e.preventDefault(); + const unlayer = emailEditorRef.current?.editor; + + unlayer?.exportHtml((data) => { + const { design, html } = data; + + let format = JSON.stringify({ + design, + html + }) + document.body.querySelector('#template_content').setAttribute('value',format); + document.body.querySelector('#template_content').value = format; + }); + }; + const onReady =(unlayer) => { + let html = document.body.querySelector('#template_content').getAttribute('value'); + let data = JSON.parse(html); + unlayer.loadDesign(data.design); + }; + + + + return ( +
+
+ +
+ +
+ ); +} diff --git a/assets/functions/preact.js b/assets/functions/preact.js new file mode 100644 index 0000000..89fe6b0 --- /dev/null +++ b/assets/functions/preact.js @@ -0,0 +1,152 @@ +import { h, cloneElement, render, hydrate } from 'preact' + +export default function preactCustomElement (tagName, Component, propNames, options) { + function PreactElement () { + const inst = Reflect.construct(HTMLElement, [], PreactElement) + inst._vdomComponent = Component + inst._root = options && options.shadow ? inst.attachShadow({ mode: 'open' }) : inst + return inst + } + PreactElement.prototype = Object.create(HTMLElement.prototype) + PreactElement.prototype.constructor = PreactElement + PreactElement.prototype.connectedCallback = connectedCallback + PreactElement.prototype.attributeChangedCallback = attributeChangedCallback + PreactElement.prototype.disconnectedCallback = disconnectedCallback + + propNames = propNames || Component.observedAttributes || Object.keys(Component.propTypes || {}) + PreactElement.observedAttributes = propNames + + // Keep DOM properties and Preact props in sync + propNames.forEach(name => { + Object.defineProperty(PreactElement.prototype, name, { + get () { + return this._vdom.props[name] + }, + set (v) { + if (this._vdom) { + this.attributeChangedCallback(name, null, v) + } else { + if (!this._props) this._props = {} + this._props[name] = v + this.connectedCallback() + } + + // Reflect property changes to attributes if the value is a primitive + const type = typeof v + if (v == null || type === 'string' || type === 'boolean' || type === 'number') { + this.setAttribute(name, v) + } + } + }) + }) + + return customElements.define(tagName || Component.tagName || Component.displayName || Component.name, PreactElement) +} + +function ContextProvider (props) { + this.getChildContext = () => props.context + // eslint-disable-next-line no-unused-vars + const { context, children, ...rest } = props + return cloneElement(children, rest) +} + +function connectedCallback () { + // Obtain a reference to the previous context by pinging the nearest + // higher up node that was rendered with Preact. If one Preact component + // higher up receives our ping, it will set the `detail` property of + // our custom event. This works because events are dispatched + // synchronously. + const event = new CustomEvent('_preact', { + detail: {}, + bubbles: true, + cancelable: true + }) + this.dispatchEvent(event) + const context = event.detail.context + + this._vdom = h(ContextProvider, { ...this._props, context }, toVdom(this, this._vdomComponent)) + ;(this.hasAttribute('hydrate') ? hydrate : render)(this._vdom, this._root) +} + +function toCamelCase (str) { + return str.replace(/-(\w)/g, (_, c) => (c ? c.toUpperCase() : '')) +} + +function attributeChangedCallback (name, oldValue, newValue) { + if (!this._vdom) return + // Attributes use `null` as an empty value whereas `undefined` is more + // common in pure JS components, especially with default parameters. + // When calling `node.removeAttribute()` we'll receive `null` as the new + // value. See issue #50. + newValue = newValue == null ? undefined : newValue + const props = {} + props[name] = newValue + props[toCamelCase(name)] = newValue + this._vdom = cloneElement(this._vdom, props) + render(this._vdom, this._root) +} + +function disconnectedCallback () { + render((this._vdom = null), this._root) +} + +/** + * Pass an event listener to each `` that "forwards" the current + * context value to the rendered child. The child will trigger a custom + * event, where will add the context value to. Because events work + * synchronously, the child can immediately pull of the value right + * after having fired the event. + */ +function Slot (props, context) { + const ref = r => { + if (!r) { + this.ref.removeEventListener('_preact', this._listener) + } else { + this.ref = r + if (!this._listener) { + this._listener = event => { + event.stopPropagation() + event.detail.context = context + } + r.addEventListener('_preact', this._listener) + } + } + } + return h('slot', { ...props, ref }) +} + +function toVdom (element, nodeName) { + if (element.nodeType === Node.TEXT_NODE) { + const data = element.data + element.data = '' + return data + } + if (element.nodeType !== Node.ELEMENT_NODE) return null + const children = [] + const props = {} + let i = 0 + const a = element.attributes + const cn = element.childNodes + for (i = a.length; i--; ) { + if (a[i].name !== 'slot') { + props[a[i].name] = a[i].value + props[toCamelCase(a[i].name)] = a[i].value + } + } + props.parent = element + + for (i = cn.length; i--; ) { + const vnode = toVdom(cn[i], null) + // Move slots correctly + const name = cn[i].slot + if (name) { + props[name] = h(Slot, { name }, vnode) + } else { + children[i] = vnode + } + } + + // Only wrap the topmost node with a slot + const wrappedChildren = nodeName ? h(Slot, null, children) : children + return h(nodeName || element.nodeName.toLowerCase(), props, wrappedChildren) +} diff --git a/bun.lockb b/bun.lockb index b8ad96c93c2a2d780237b43f31530f4a89b69c7a..68b72de235d8f29c3b896e168df792de1c713338 100755 GIT binary patch delta 48753 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 IG|u_|0G9s_^#A|> diff --git a/migrations/Version20250801135113.php b/migrations/Version20250801135113.php new file mode 100644 index 0000000..14276b6 --- /dev/null +++ b/migrations/Version20250801135113.php @@ -0,0 +1,36 @@ +addSql('ALTER TABLE template ALTER content TYPE TEXT'); + $this->addSql('ALTER TABLE template ALTER content DROP NOT NULL'); + $this->addSql('COMMENT ON COLUMN template.content IS NULL'); + } + + public function down(Schema $schema): void + { + // this down() migration is auto-generated, please modify it to your needs + $this->addSql('CREATE SCHEMA public'); + $this->addSql('ALTER TABLE template ALTER content TYPE TEXT'); + $this->addSql('ALTER TABLE template ALTER content SET NOT NULL'); + $this->addSql('COMMENT ON COLUMN template.content IS \'(DC2Type:array)\''); + } +} diff --git a/package.json b/package.json index 6819464..4c08930 100644 --- a/package.json +++ b/package.json @@ -21,10 +21,15 @@ }, "dependencies": { "@grafikart/drop-files-element": "^1.0.9", + "@grapesjs/studio-sdk": "^1.0.55", + "@grapesjs/studio-sdk-plugins": "^1.0.27", "@hotwired/turbo": "^8.0.13", + "@preact/preset-vite": "^2.10.2", "@sentry/browser": "^9.34.0", "@tailwindcss/vite": "^4.1.10", + "@usewaypoint/email-builder": "^0.0.8", "autoprefixer": "^10.4.21", + "react-email-editor": "^1.7.11", "sortablejs": "^1.15.6", "tailwindcss": "^4.1.10" } diff --git a/src/Controller/Artemis/Newsletter/TemplateController.php b/src/Controller/Artemis/Newsletter/TemplateController.php index 61373d6..c5d5195 100644 --- a/src/Controller/Artemis/Newsletter/TemplateController.php +++ b/src/Controller/Artemis/Newsletter/TemplateController.php @@ -2,8 +2,12 @@ namespace App\Controller\Artemis\Newsletter; +use App\Entity\Newsletter\Template; +use App\Form\Artemis\Newsletter\TemplateType; use App\Repository\Newsletter\TemplateRepository; +use Doctrine\ORM\EntityManagerInterface; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; +use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Attribute\Route; @@ -34,4 +38,36 @@ class TemplateController extends AbstractController //button link } + + #[Route(path: '/artemis/newsletter/template/add',name: 'artemis_newsletter_template_add',methods: ['GET', 'POST'])] + #[Route(path: '/artemis/newsletter/template/{id}',name: 'artemis_newsletter_template_edit',methods: ['GET', 'POST'])] + public function templateEditor(?Template $template,EntityManagerInterface $entityManager,Request $request): Response + { + if(is_null($template)){ + $template = new Template(); + } + + + $form = $this->createForm(TemplateType::class,$template); + $form->handleRequest($request); + if($form->isSubmitted() && $form->isValid()){ + $entityManager->persist($template); + $entityManager->flush(); + $this->addFlash("success","Mise à jour effectuée"); + return $this->redirectToRoute('artemis_newsletter_template_edit',['id'=>$template->getId()]); + + } + return $this->render('artemis/newsletter/template/editor.twig', [ + 'form' => $form->createView(), + 'template' => $template, + ]); + + + } + + #[Route(path: '/artemis/newsletter/template/{id}/preview',name: 'artemis_newsletter_template_preview',methods: ['GET', 'POST'])] + public function templatePreview(TemplateRepository $templateRepository): Response + { + + } } diff --git a/src/Entity/Newsletter/Template.php b/src/Entity/Newsletter/Template.php index 4c5da0e..48503f0 100644 --- a/src/Entity/Newsletter/Template.php +++ b/src/Entity/Newsletter/Template.php @@ -17,8 +17,8 @@ class Template #[ORM\Column(length: 255)] private ?string $name = null; - #[ORM\Column(type: Types::ARRAY)] - private array $content = []; + #[ORM\Column(type: 'text',nullable: true)] + private string $content = ""; public function getId(): ?int { @@ -37,12 +37,12 @@ class Template return $this; } - public function getContent(): array + public function getContent(): string { return $this->content; } - public function setContent(array $content): static + public function setContent(string $content): static { $this->content = $content; diff --git a/src/Form/Artemis/Newsletter/TemplateType.php b/src/Form/Artemis/Newsletter/TemplateType.php new file mode 100644 index 0000000..28d98fc --- /dev/null +++ b/src/Form/Artemis/Newsletter/TemplateType.php @@ -0,0 +1,29 @@ +add('name',TextType::class,[ + 'label'=>'Nom', + 'required'=>true, + ]) + ->add('content',HiddenType::class,[ + ]); + } + + public function configureOptions(OptionsResolver $resolver) + { + $resolver->setDefault('data_class',Template::class); + } +} diff --git a/templates/artemis/newsletter/template.twig b/templates/artemis/newsletter/template.twig index 6332d7f..d0aaa26 100644 --- a/templates/artemis/newsletter/template.twig +++ b/templates/artemis/newsletter/template.twig @@ -28,7 +28,7 @@ {% else %} -
Aucune liste trouvée.
+
Aucun template trouvée.
{% endfor %} {% endblock %} diff --git a/templates/artemis/newsletter/template/editor.twig b/templates/artemis/newsletter/template/editor.twig new file mode 100644 index 0000000..5f749aa --- /dev/null +++ b/templates/artemis/newsletter/template/editor.twig @@ -0,0 +1,38 @@ +{% extends 'artemis/base.twig' %} +{% block title %}Template - {{ template.name }}{% endblock %} + +{% block content %} +
+

Template - {{ template.name }}

+ {% if template.id is not null %} + + {% endif %} +
+
+ {{ form_start(form, {'attr': {'class': 'w-full'}}) }} +
+ {{ form_label(form.name, null, {'label_attr': {'class': 'block mb-1 font-medium text-gray-700 dark:text-gray-300'}}) }} + {{ form_widget(form.name, {'attr': { + 'class': 'w-full p-2 border border-gray-300 rounded focus:outline-none focus:ring-2 focus:ring-blue-500 dark:bg-gray-700 dark:border-gray-600 dark:text-white' + }}) }} + {{ form_errors(form.name) }} +
+ + + {{ form_end(form) }} +
+ + + +{% endblock %} diff --git a/vite.config.js b/vite.config.js index 8fd091d..9a284ba 100644 --- a/vite.config.js +++ b/vite.config.js @@ -4,6 +4,7 @@ import { defineConfig } from 'vite'; import { resolve } from 'path'; import JavaScriptObfuscator from 'rollup-plugin-javascript-obfuscator'; import tailwindcss from '@tailwindcss/vite' +import preact from '@preact/preset-vite'; // Si vous utilisez un framework comme Vue ou React, importez son plugin ici // import vue from '@vitejs/plugin-vue'; @@ -82,6 +83,7 @@ export default defineConfig({ plugins: [ // Ajoutez ici les plugins de framework (ex: vue(), react()) tailwindcss(), + preact(), // --- PLUGIN D'OBSCURCISSEMENT JAVASCRIPT --- // Doit être l'un des derniers plugins pour s'appliquer au code final. // ATTENTION : Ces options sont très agressives et peuvent casser votre code. diff --git a/yarn.lock b/yarn.lock new file mode 100644 index 0000000..a6502b0 --- /dev/null +++ b/yarn.lock @@ -0,0 +1,2187 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@alloc/quick-lru@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@alloc/quick-lru/-/quick-lru-5.2.0.tgz#7bf68b20c0a350f936915fcae06f58e32007ce30" + integrity sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw== + +"@ampproject/remapping@^2.3.0": + version "2.3.0" + resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.3.0.tgz#ed441b6fa600072520ce18b43d2c8cc8caecc7f4" + integrity sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw== + dependencies: + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.24" + +"@babel/runtime@7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.7.4.tgz#b23a856751e4bf099262f867767889c0e3fe175b" + integrity sha512-r24eVUUr0QqNZa+qrImUk8fn5SPhHq+IfYvIoIMg0do3GdK9sMdiLKP3GYVVaxpPKORgm8KRKaNTEhAjgIpLMw== + dependencies: + regenerator-runtime "^0.13.2" + +"@emnapi/core@^1.4.3": + version "1.4.5" + resolved "https://registry.yarnpkg.com/@emnapi/core/-/core-1.4.5.tgz#bfbb0cbbbb9f96ec4e2c4fd917b7bbe5495ceccb" + integrity sha512-XsLw1dEOpkSX/WucdqUhPWP7hDxSvZiY+fsUC14h+FtQ2Ifni4znbBt8punRX+Uj2JG/uDb8nEHVKvrVlvdZ5Q== + dependencies: + "@emnapi/wasi-threads" "1.0.4" + tslib "^2.4.0" + +"@emnapi/runtime@^1.4.3": + version "1.4.5" + resolved "https://registry.yarnpkg.com/@emnapi/runtime/-/runtime-1.4.5.tgz#c67710d0661070f38418b6474584f159de38aba9" + integrity sha512-++LApOtY0pEEz1zrd9vy1/zXVaVJJ/EbAF3u0fXIzPJEDtnITsBGbbK0EkM72amhl/R5b+5xx0Y/QhcVOpuulg== + dependencies: + tslib "^2.4.0" + +"@emnapi/wasi-threads@1.0.4", "@emnapi/wasi-threads@^1.0.2": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@emnapi/wasi-threads/-/wasi-threads-1.0.4.tgz#703fc094d969e273b1b71c292523b2f792862bf4" + integrity sha512-PJR+bOmMOPH8AtcTGAyYNiuJ3/Fcoj2XN/gBEWzDIKh254XO+mM9XoXHk5GNEhodxeMznbg7BlRojVbKN+gC6g== + dependencies: + tslib "^2.4.0" + +"@esbuild/aix-ppc64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.25.8.tgz#a1414903bb38027382f85f03dda6065056757727" + integrity sha512-urAvrUedIqEiFR3FYSLTWQgLu5tb+m0qZw0NBEasUeo6wuqatkMDaRT+1uABiGXEu5vqgPd7FGE1BhsAIy9QVA== + +"@esbuild/android-arm64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.25.8.tgz#c859994089e9767224269884061f89dae6fb51c6" + integrity sha512-OD3p7LYzWpLhZEyATcTSJ67qB5D+20vbtr6vHlHWSQYhKtzUYrETuWThmzFpZtFsBIxRvhO07+UgVA9m0i/O1w== + +"@esbuild/android-arm@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.25.8.tgz#96a8f2ca91c6cd29ea90b1af79d83761c8ba0059" + integrity sha512-RONsAvGCz5oWyePVnLdZY/HHwA++nxYWIX1atInlaW6SEkwq6XkP3+cb825EUcRs5Vss/lGh/2YxAb5xqc07Uw== + +"@esbuild/android-x64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.25.8.tgz#a3a626c4fec4a024a9fa8c7679c39996e92916f0" + integrity sha512-yJAVPklM5+4+9dTeKwHOaA+LQkmrKFX96BM0A/2zQrbS6ENCmxc4OVoBs5dPkCCak2roAD+jKCdnmOqKszPkjA== + +"@esbuild/darwin-arm64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.25.8.tgz#a5e1252ca2983d566af1c0ea39aded65736fc66d" + integrity sha512-Jw0mxgIaYX6R8ODrdkLLPwBqHTtYHJSmzzd+QeytSugzQ0Vg4c5rDky5VgkoowbZQahCbsv1rT1KW72MPIkevw== + +"@esbuild/darwin-x64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.25.8.tgz#5271b0df2bb12ce8df886704bfdd1c7cc01385d2" + integrity sha512-Vh2gLxxHnuoQ+GjPNvDSDRpoBCUzY4Pu0kBqMBDlK4fuWbKgGtmDIeEC081xi26PPjn+1tct+Bh8FjyLlw1Zlg== + +"@esbuild/freebsd-arm64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.8.tgz#d0a0e7fdf19733b8bb1566b81df1aa0bb7e46ada" + integrity sha512-YPJ7hDQ9DnNe5vxOm6jaie9QsTwcKedPvizTVlqWG9GBSq+BuyWEDazlGaDTC5NGU4QJd666V0yqCBL2oWKPfA== + +"@esbuild/freebsd-x64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.25.8.tgz#2de8b2e0899d08f1cb1ef3128e159616e7e85343" + integrity sha512-MmaEXxQRdXNFsRN/KcIimLnSJrk2r5H8v+WVafRWz5xdSVmWLoITZQXcgehI2ZE6gioE6HirAEToM/RvFBeuhw== + +"@esbuild/linux-arm64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.25.8.tgz#a4209efadc0c2975716458484a4e90c237c48ae9" + integrity sha512-WIgg00ARWv/uYLU7lsuDK00d/hHSfES5BzdWAdAig1ioV5kaFNrtK8EqGcUBJhYqotlUByUKz5Qo6u8tt7iD/w== + +"@esbuild/linux-arm@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.25.8.tgz#ccd9e291c24cd8d9142d819d463e2e7200d25b19" + integrity sha512-FuzEP9BixzZohl1kLf76KEVOsxtIBFwCaLupVuk4eFVnOZfU+Wsn+x5Ryam7nILV2pkq2TqQM9EZPsOBuMC+kg== + +"@esbuild/linux-ia32@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.25.8.tgz#006ad1536d0c2b28fb3a1cf0b53bcb85aaf92c4d" + integrity sha512-A1D9YzRX1i+1AJZuFFUMP1E9fMaYY+GnSQil9Tlw05utlE86EKTUA7RjwHDkEitmLYiFsRd9HwKBPEftNdBfjg== + +"@esbuild/linux-loong64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.25.8.tgz#127b3fbfb2c2e08b1397e985932f718f09a8f5c4" + integrity sha512-O7k1J/dwHkY1RMVvglFHl1HzutGEFFZ3kNiDMSOyUrB7WcoHGf96Sh+64nTRT26l3GMbCW01Ekh/ThKM5iI7hQ== + +"@esbuild/linux-mips64el@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.25.8.tgz#837d1449517791e3fa7d82675a2d06d9f56cb340" + integrity sha512-uv+dqfRazte3BzfMp8PAQXmdGHQt2oC/y2ovwpTteqrMx2lwaksiFZ/bdkXJC19ttTvNXBuWH53zy/aTj1FgGw== + +"@esbuild/linux-ppc64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.25.8.tgz#aa2e3bd93ab8df084212f1895ca4b03c42d9e0fe" + integrity sha512-GyG0KcMi1GBavP5JgAkkstMGyMholMDybAf8wF5A70CALlDM2p/f7YFE7H92eDeH/VBtFJA5MT4nRPDGg4JuzQ== + +"@esbuild/linux-riscv64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.25.8.tgz#a340620e31093fef72767dd28ab04214b3442083" + integrity sha512-rAqDYFv3yzMrq7GIcen3XP7TUEG/4LK86LUPMIz6RT8A6pRIDn0sDcvjudVZBiiTcZCY9y2SgYX2lgK3AF+1eg== + +"@esbuild/linux-s390x@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.25.8.tgz#ddfed266c8c13f5efb3105a0cd47f6dcd0e79e71" + integrity sha512-Xutvh6VjlbcHpsIIbwY8GVRbwoviWT19tFhgdA7DlenLGC/mbc3lBoVb7jxj9Z+eyGqvcnSyIltYUrkKzWqSvg== + +"@esbuild/linux-x64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.25.8.tgz#9a4f78c75c051e8c060183ebb39a269ba936a2ac" + integrity sha512-ASFQhgY4ElXh3nDcOMTkQero4b1lgubskNlhIfJrsH5OKZXDpUAKBlNS0Kx81jwOBp+HCeZqmoJuihTv57/jvQ== + +"@esbuild/netbsd-arm64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.8.tgz#902c80e1d678047926387230bc037e63e00697d0" + integrity sha512-d1KfruIeohqAi6SA+gENMuObDbEjn22olAR7egqnkCD9DGBG0wsEARotkLgXDu6c4ncgWTZJtN5vcgxzWRMzcw== + +"@esbuild/netbsd-x64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.25.8.tgz#2d9eb4692add2681ff05a14ce99de54fbed7079c" + integrity sha512-nVDCkrvx2ua+XQNyfrujIG38+YGyuy2Ru9kKVNyh5jAys6n+l44tTtToqHjino2My8VAY6Lw9H7RI73XFi66Cg== + +"@esbuild/openbsd-arm64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.8.tgz#89c3b998c6de739db38ab7fb71a8a76b3fa84a45" + integrity sha512-j8HgrDuSJFAujkivSMSfPQSAa5Fxbvk4rgNAS5i3K+r8s1X0p1uOO2Hl2xNsGFppOeHOLAVgYwDVlmxhq5h+SQ== + +"@esbuild/openbsd-x64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.25.8.tgz#2f01615cf472b0e48c077045cfd96b5c149365cc" + integrity sha512-1h8MUAwa0VhNCDp6Af0HToI2TJFAn1uqT9Al6DJVzdIBAd21m/G0Yfc77KDM3uF3T/YaOgQq3qTJHPbTOInaIQ== + +"@esbuild/openharmony-arm64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.8.tgz#a201f720cd2c3ebf9a6033fcc3feb069a54b509a" + integrity sha512-r2nVa5SIK9tSWd0kJd9HCffnDHKchTGikb//9c7HX+r+wHYCpQrSgxhlY6KWV1nFo1l4KFbsMlHk+L6fekLsUg== + +"@esbuild/sunos-x64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.25.8.tgz#07046c977985a3334667f19e6ab3a01a80862afb" + integrity sha512-zUlaP2S12YhQ2UzUfcCuMDHQFJyKABkAjvO5YSndMiIkMimPmxA+BYSBikWgsRpvyxuRnow4nS5NPnf9fpv41w== + +"@esbuild/win32-arm64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.25.8.tgz#4a5470caf0d16127c05d4833d4934213c69392d1" + integrity sha512-YEGFFWESlPva8hGL+zvj2z/SaK+pH0SwOM0Nc/d+rVnW7GSTFlLBGzZkuSU9kFIGIo8q9X3ucpZhu8PDN5A2sQ== + +"@esbuild/win32-ia32@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.25.8.tgz#3de3e8470b7b328d99dbc3e9ec1eace207e5bbc4" + integrity sha512-hiGgGC6KZ5LZz58OL/+qVVoZiuZlUYlYHNAmczOm7bs2oE1XriPFi5ZHHrS8ACpV5EjySrnoCKmcbQMN+ojnHg== + +"@esbuild/win32-x64@0.25.8": + version "0.25.8" + resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.25.8.tgz#610d7ea539d2fcdbe39237b5cc175eb2c4451f9c" + integrity sha512-cn3Yr7+OaaZq1c+2pe+8yxC8E144SReCQjN6/2ynubzYjvyqZjTXfQJpAcQpsdJq3My7XADANiYGHoFC69pLQw== + +"@grafikart/drop-files-element@^1.0.9": + version "1.0.9" + resolved "https://registry.yarnpkg.com/@grafikart/drop-files-element/-/drop-files-element-1.0.9.tgz#6dbf1353d675c925cdeaf0f137a20681caa7e0e5" + integrity sha512-Eo2T8bQ30plnT+FOPW8xtGhe6+qDdbhT1IOeA0G18AiSI8nJF9LlmyZLh+PSy6UUnv3+6TMa3QOQIo/zroJQ4g== + +"@grapesjs/react@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@grapesjs/react/-/react-2.0.0.tgz#d62963241d3db03abc5af0cc2ba523f6b9079cfa" + integrity sha512-RpQhLqqr+6PjPB6bonQ4GgANfc9eoKyqa3SplLKPBoWX8OrzYUg62q5taTbyL7MTT+OzrmAHPOLyPGdqux9+Pg== + dependencies: + "@types/react" "^19.0.0" + "@types/react-dom" "^19.0.0" + react "^19.0.0" + react-dom "^19.0.0" + +"@grapesjs/studio-sdk-plugins@^1.0.27": + version "1.0.27" + resolved "https://registry.yarnpkg.com/@grapesjs/studio-sdk-plugins/-/studio-sdk-plugins-1.0.27.tgz#13f9823201250ad0f854e6e2b10cf9cda27b520b" + integrity sha512-cID4sF+wL6gCLuZqcZwjro6zEydMeW8ip2LguF+r7FZuX/6eLCbJnMUnMgGCiBIh+DRvP096RtMZl6V2mlm7bg== + dependencies: + handlebars "^4.7.8" + prosemirror-commands "^1.6.2" + prosemirror-history "^1.4.1" + prosemirror-inputrules "^1.4.0" + prosemirror-keymap "^1.2.2" + prosemirror-model "^1.24.0" + prosemirror-schema-list "^1.4.1" + prosemirror-state "^1.4.3" + prosemirror-tables "^1.6.1" + prosemirror-view "^1.37.0" + +"@grapesjs/studio-sdk@^1.0.55": + version "1.0.55" + resolved "https://registry.yarnpkg.com/@grapesjs/studio-sdk/-/studio-sdk-1.0.55.tgz#fc106ed4fa6984fd8e93cba71191792ee6ab9da0" + integrity sha512-MlyIkfpzUycDqXmKV5ZRWDyUF+Vebsv7ggGsmeDVGHuHLlFIfTg1tyIETkyC7EFagbmhyKsEwueYthwxMYVo5w== + dependencies: + "@grapesjs/react" "^2.0.0" + grapesjs "^0.22.10" + +"@hotwired/stimulus-webpack-helpers@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@hotwired/stimulus-webpack-helpers/-/stimulus-webpack-helpers-1.0.1.tgz#4cd74487adeca576c9865ac2b9fe5cb20cef16dd" + integrity sha512-wa/zupVG0eWxRYJjC1IiPBdt3Lruv0RqGN+/DTMmUWUyMAEB27KXmVY6a8YpUVTM7QwVuaLNGW4EqDgrS2upXQ== + +"@hotwired/stimulus@^3.0.0": + version "3.2.2" + resolved "https://registry.yarnpkg.com/@hotwired/stimulus/-/stimulus-3.2.2.tgz#071aab59c600fed95b97939e605ff261a4251608" + integrity sha512-eGeIqNOQpXoPAIP7tC1+1Yc1yl1xnwYqg+3mzqxyrbE5pg5YFBZcA6YoTiByJB6DKAEsiWtl6tjTJS4IYtbB7A== + +"@hotwired/turbo@^8.0.13": + version "8.0.13" + resolved "https://registry.yarnpkg.com/@hotwired/turbo/-/turbo-8.0.13.tgz#ab35fda9d358432c8a872a833844b38cccb8c25b" + integrity sha512-M7qXUqcGab6G5PKOiwhgbByTtrPgKPFCTMNQ52QhzUEXEqmp0/ApEguUesh/FPiUjrmFec+3lq98KsWnYY2C7g== + +"@isaacs/fs-minipass@^4.0.0": + version "4.0.1" + resolved "https://registry.yarnpkg.com/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz#2d59ae3ab4b38fb4270bfa23d30f8e2e86c7fe32" + integrity sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w== + dependencies: + minipass "^7.0.4" + +"@jridgewell/gen-mapping@^0.3.5": + version "0.3.12" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.12.tgz#2234ce26c62889f03db3d7fea43c1932ab3e927b" + integrity sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg== + dependencies: + "@jridgewell/sourcemap-codec" "^1.5.0" + "@jridgewell/trace-mapping" "^0.3.24" + +"@jridgewell/resolve-uri@^3.1.0": + version "3.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" + integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== + +"@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.5.0": + version "1.5.4" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.4.tgz#7358043433b2e5da569aa02cbc4c121da3af27d7" + integrity sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw== + +"@jridgewell/trace-mapping@^0.3.24": + version "0.3.29" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.29.tgz#a58d31eaadaf92c6695680b2e1d464a9b8fbf7fc" + integrity sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" + +"@napi-rs/wasm-runtime@^0.2.11": + version "0.2.12" + resolved "https://registry.yarnpkg.com/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.12.tgz#3e78a8b96e6c33a6c517e1894efbd5385a7cb6f2" + integrity sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ== + dependencies: + "@emnapi/core" "^1.4.3" + "@emnapi/runtime" "^1.4.3" + "@tybys/wasm-util" "^0.10.0" + +"@parcel/watcher-android-arm64@2.5.1": + version "2.5.1" + resolved "https://registry.yarnpkg.com/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.1.tgz#507f836d7e2042f798c7d07ad19c3546f9848ac1" + integrity sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA== + +"@parcel/watcher-darwin-arm64@2.5.1": + version "2.5.1" + resolved "https://registry.yarnpkg.com/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.1.tgz#3d26dce38de6590ef79c47ec2c55793c06ad4f67" + integrity sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw== + +"@parcel/watcher-darwin-x64@2.5.1": + version "2.5.1" + resolved "https://registry.yarnpkg.com/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.1.tgz#99f3af3869069ccf774e4ddfccf7e64fd2311ef8" + integrity sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg== + +"@parcel/watcher-freebsd-x64@2.5.1": + version "2.5.1" + resolved "https://registry.yarnpkg.com/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.1.tgz#14d6857741a9f51dfe51d5b08b7c8afdbc73ad9b" + integrity sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ== + +"@parcel/watcher-linux-arm-glibc@2.5.1": + version "2.5.1" + resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.1.tgz#43c3246d6892381db473bb4f663229ad20b609a1" + integrity sha512-RCdZlEyTs8geyBkkcnPWvtXLY44BCeZKmGYRtSgtwwnHR4dxfHRG3gR99XdMEdQ7KeiDdasJwwvNSF5jKtDwdA== + +"@parcel/watcher-linux-arm-musl@2.5.1": + version "2.5.1" + resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.1.tgz#663750f7090bb6278d2210de643eb8a3f780d08e" + integrity sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q== + +"@parcel/watcher-linux-arm64-glibc@2.5.1": + version "2.5.1" + resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.1.tgz#ba60e1f56977f7e47cd7e31ad65d15fdcbd07e30" + integrity sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w== + +"@parcel/watcher-linux-arm64-musl@2.5.1": + version "2.5.1" + resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.1.tgz#f7fbcdff2f04c526f96eac01f97419a6a99855d2" + integrity sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg== + +"@parcel/watcher-linux-x64-glibc@2.5.1": + version "2.5.1" + resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.1.tgz#4d2ea0f633eb1917d83d483392ce6181b6a92e4e" + integrity sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A== + +"@parcel/watcher-linux-x64-musl@2.5.1": + version "2.5.1" + resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.1.tgz#277b346b05db54f55657301dd77bdf99d63606ee" + integrity sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg== + +"@parcel/watcher-win32-arm64@2.5.1": + version "2.5.1" + resolved "https://registry.yarnpkg.com/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.1.tgz#7e9e02a26784d47503de1d10e8eab6cceb524243" + integrity sha512-RFzklRvmc3PkjKjry3hLF9wD7ppR4AKcWNzH7kXR7GUe0Igb3Nz8fyPwtZCSquGrhU5HhUNDr/mKBqj7tqA2Vw== + +"@parcel/watcher-win32-ia32@2.5.1": + version "2.5.1" + resolved "https://registry.yarnpkg.com/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.1.tgz#2d0f94fa59a873cdc584bf7f6b1dc628ddf976e6" + integrity sha512-c2KkcVN+NJmuA7CGlaGD1qJh1cLfDnQsHjE89E60vUEMlqduHGCdCLJCID5geFVM0dOtA3ZiIO8BoEQmzQVfpQ== + +"@parcel/watcher-win32-x64@2.5.1": + version "2.5.1" + resolved "https://registry.yarnpkg.com/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.1.tgz#ae52693259664ba6f2228fa61d7ee44b64ea0947" + integrity sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA== + +"@parcel/watcher@^2.4.1": + version "2.5.1" + resolved "https://registry.yarnpkg.com/@parcel/watcher/-/watcher-2.5.1.tgz#342507a9cfaaf172479a882309def1e991fb1200" + integrity sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg== + dependencies: + detect-libc "^1.0.3" + is-glob "^4.0.3" + micromatch "^4.0.5" + node-addon-api "^7.0.0" + optionalDependencies: + "@parcel/watcher-android-arm64" "2.5.1" + "@parcel/watcher-darwin-arm64" "2.5.1" + "@parcel/watcher-darwin-x64" "2.5.1" + "@parcel/watcher-freebsd-x64" "2.5.1" + "@parcel/watcher-linux-arm-glibc" "2.5.1" + "@parcel/watcher-linux-arm-musl" "2.5.1" + "@parcel/watcher-linux-arm64-glibc" "2.5.1" + "@parcel/watcher-linux-arm64-musl" "2.5.1" + "@parcel/watcher-linux-x64-glibc" "2.5.1" + "@parcel/watcher-linux-x64-musl" "2.5.1" + "@parcel/watcher-win32-arm64" "2.5.1" + "@parcel/watcher-win32-ia32" "2.5.1" + "@parcel/watcher-win32-x64" "2.5.1" + +"@rollup/rollup-android-arm-eabi@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.46.2.tgz#292e25953d4988d3bd1af0f5ebbd5ee4d65c90b4" + integrity sha512-Zj3Hl6sN34xJtMv7Anwb5Gu01yujyE/cLBDB2gnHTAHaWS1Z38L7kuSG+oAh0giZMqG060f/YBStXtMH6FvPMA== + +"@rollup/rollup-android-arm64@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.46.2.tgz#053b3def3451e6fc1a9078188f22799e868d7c59" + integrity sha512-nTeCWY83kN64oQ5MGz3CgtPx8NSOhC5lWtsjTs+8JAJNLcP3QbLCtDDgUKQc/Ro/frpMq4SHUaHN6AMltcEoLQ== + +"@rollup/rollup-darwin-arm64@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.46.2.tgz#98d90445282dec54fd05440305a5e8df79a91ece" + integrity sha512-HV7bW2Fb/F5KPdM/9bApunQh68YVDU8sO8BvcW9OngQVN3HHHkw99wFupuUJfGR9pYLLAjcAOA6iO+evsbBaPQ== + +"@rollup/rollup-darwin-x64@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.46.2.tgz#fe05f95a736423af5f9c3a59a70f41ece52a1f20" + integrity sha512-SSj8TlYV5nJixSsm/y3QXfhspSiLYP11zpfwp6G/YDXctf3Xkdnk4woJIF5VQe0of2OjzTt8EsxnJDCdHd2xMA== + +"@rollup/rollup-freebsd-arm64@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.46.2.tgz#41e1fbdc1f8c3dc9afb6bc1d6e3fb3104bd81eee" + integrity sha512-ZyrsG4TIT9xnOlLsSSi9w/X29tCbK1yegE49RYm3tu3wF1L/B6LVMqnEWyDB26d9Ecx9zrmXCiPmIabVuLmNSg== + +"@rollup/rollup-freebsd-x64@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.46.2.tgz#69131e69cb149d547abb65ef3b38fc746c940e24" + integrity sha512-pCgHFoOECwVCJ5GFq8+gR8SBKnMO+xe5UEqbemxBpCKYQddRQMgomv1104RnLSg7nNvgKy05sLsY51+OVRyiVw== + +"@rollup/rollup-linux-arm-gnueabihf@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.46.2.tgz#977ded91c7cf6fc0d9443bb9c0a064e45a805267" + integrity sha512-EtP8aquZ0xQg0ETFcxUbU71MZlHaw9MChwrQzatiE8U/bvi5uv/oChExXC4mWhjiqK7azGJBqU0tt5H123SzVA== + +"@rollup/rollup-linux-arm-musleabihf@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.46.2.tgz#dc034fc3c0f0eb5c75b6bc3eca3b0b97fd35f49a" + integrity sha512-qO7F7U3u1nfxYRPM8HqFtLd+raev2K137dsV08q/LRKRLEc7RsiDWihUnrINdsWQxPR9jqZ8DIIZ1zJJAm5PjQ== + +"@rollup/rollup-linux-arm64-gnu@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.46.2.tgz#5e92613768d3de3ffcabc965627dd0a59b3e7dfc" + integrity sha512-3dRaqLfcOXYsfvw5xMrxAk9Lb1f395gkoBYzSFcc/scgRFptRXL9DOaDpMiehf9CO8ZDRJW2z45b6fpU5nwjng== + +"@rollup/rollup-linux-arm64-musl@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.46.2.tgz#2a44f88e83d28b646591df6e50aa0a5a931833d8" + integrity sha512-fhHFTutA7SM+IrR6lIfiHskxmpmPTJUXpWIsBXpeEwNgZzZZSg/q4i6FU4J8qOGyJ0TR+wXBwx/L7Ho9z0+uDg== + +"@rollup/rollup-linux-loongarch64-gnu@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.46.2.tgz#bd5897e92db7fbf7dc456f61d90fff96c4651f2e" + integrity sha512-i7wfGFXu8x4+FRqPymzjD+Hyav8l95UIZ773j7J7zRYc3Xsxy2wIn4x+llpunexXe6laaO72iEjeeGyUFmjKeA== + +"@rollup/rollup-linux-ppc64-gnu@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.46.2.tgz#a7065025411c14ad9ec34cc1cd1414900ec2a303" + integrity sha512-B/l0dFcHVUnqcGZWKcWBSV2PF01YUt0Rvlurci5P+neqY/yMKchGU8ullZvIv5e8Y1C6wOn+U03mrDylP5q9Yw== + +"@rollup/rollup-linux-riscv64-gnu@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.46.2.tgz#17f9c0c675e13ef4567cfaa3730752417257ccc3" + integrity sha512-32k4ENb5ygtkMwPMucAb8MtV8olkPT03oiTxJbgkJa7lJ7dZMr0GCFJlyvy+K8iq7F/iuOr41ZdUHaOiqyR3iQ== + +"@rollup/rollup-linux-riscv64-musl@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.46.2.tgz#bc6ed3db2cedc1ba9c0a2183620fe2f792c3bf3f" + integrity sha512-t5B2loThlFEauloaQkZg9gxV05BYeITLvLkWOkRXogP4qHXLkWSbSHKM9S6H1schf/0YGP/qNKtiISlxvfmmZw== + +"@rollup/rollup-linux-s390x-gnu@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.46.2.tgz#440c4f6753274e2928e06d2a25613e5a1cf97b41" + integrity sha512-YKjekwTEKgbB7n17gmODSmJVUIvj8CX7q5442/CK80L8nqOUbMtf8b01QkG3jOqyr1rotrAnW6B/qiHwfcuWQA== + +"@rollup/rollup-linux-x64-gnu@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.46.2.tgz#1e936446f90b2574ea4a83b4842a762cc0a0aed3" + integrity sha512-Jj5a9RUoe5ra+MEyERkDKLwTXVu6s3aACP51nkfnK9wJTraCC8IMe3snOfALkrjTYd2G1ViE1hICj0fZ7ALBPA== + +"@rollup/rollup-linux-x64-musl@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.46.2.tgz#c6f304dfba1d5faf2be5d8b153ccbd8b5d6f1166" + integrity sha512-7kX69DIrBeD7yNp4A5b81izs8BqoZkCIaxQaOpumcJ1S/kmqNFjPhDu1LHeVXv0SexfHQv5cqHsxLOjETuqDuA== + +"@rollup/rollup-win32-arm64-msvc@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.46.2.tgz#b4ad4a79219892aac112ed1c9d1356cad0566ef5" + integrity sha512-wiJWMIpeaak/jsbaq2HMh/rzZxHVW1rU6coyeNNpMwk5isiPjSTx0a4YLSlYDwBH/WBvLz+EtsNqQScZTLJy3g== + +"@rollup/rollup-win32-ia32-msvc@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.46.2.tgz#b1b22eb2a9568048961e4a6f540438b4a762aa62" + integrity sha512-gBgaUDESVzMgWZhcyjfs9QFK16D8K6QZpwAaVNJxYDLHWayOta4ZMjGm/vsAEy3hvlS2GosVFlBlP9/Wb85DqQ== + +"@rollup/rollup-win32-x64-msvc@4.46.2": + version "4.46.2" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.46.2.tgz#87079f137b5fdb75da11508419aa998cc8cc3d8b" + integrity sha512-CvUo2ixeIQGtF6WvuB87XWqPQkoFAFqW+HUo/WzHwuHDvIwZCtjdWXoYCcr06iKGydiqTclC4jU/TNObC/xKZg== + +"@sentry-internal/browser-utils@9.44.0": + version "9.44.0" + resolved "https://registry.yarnpkg.com/@sentry-internal/browser-utils/-/browser-utils-9.44.0.tgz#1bb9cfe7bcc0e5f87c060133e2e3f0b9d7ab6e06" + integrity sha512-ySIXxq3xq2lhY/XPMLUtaUd6HghJUsz+S5GksuRCxv6exY6mRMjsbm7VhcAEPmY4IrhsXjnEzCONP+M7pzAc3A== + dependencies: + "@sentry/core" "9.44.0" + +"@sentry-internal/feedback@9.44.0": + version "9.44.0" + resolved "https://registry.yarnpkg.com/@sentry-internal/feedback/-/feedback-9.44.0.tgz#1fe4fe83e42122b4bba31ac8882b0a15371a347a" + integrity sha512-ptA74gXPU7qV9eBuz2UUyFv+BroMrVMZD58eIG3IkRu93mAH0dhJiKmd1rhlWheXfhFhiw82WdNH9sTQj7++GA== + dependencies: + "@sentry/core" "9.44.0" + +"@sentry-internal/replay-canvas@9.44.0": + version "9.44.0" + resolved "https://registry.yarnpkg.com/@sentry-internal/replay-canvas/-/replay-canvas-9.44.0.tgz#9a580a53eb7721eec6a5b4b0d233150378de3b71" + integrity sha512-JTRBlKsd46tz/bE6FE8bRsapteWwBt+4eviYZlE6Wn/QSirYOqEniibhJ8GIUIpUmHpkrvNAfIRaKJ4tXYaqGQ== + dependencies: + "@sentry-internal/replay" "9.44.0" + "@sentry/core" "9.44.0" + +"@sentry-internal/replay@9.44.0": + version "9.44.0" + resolved "https://registry.yarnpkg.com/@sentry-internal/replay/-/replay-9.44.0.tgz#0fd0b1f5c682113c97584cca0094879751953064" + integrity sha512-IVRbONKaoxcDItpcXV9wpNCL+T5iMnTLJv2glMULMnqU4nplhBynxjSyng1s/rpTU4PwwYYIgwkb4Z0GMIYPlg== + dependencies: + "@sentry-internal/browser-utils" "9.44.0" + "@sentry/core" "9.44.0" + +"@sentry/browser@^9.34.0": + version "9.44.0" + resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-9.44.0.tgz#e5db81fd0508b24dc71335b443c31efc15422098" + integrity sha512-QhZds04ta8m1SGN8jpF22kFu2SyM2FcHM2tFBaFuYTK6b7ouBII6YpYLhXulZvF+xl/pxnYsXHgyeTJ5JseITg== + dependencies: + "@sentry-internal/browser-utils" "9.44.0" + "@sentry-internal/feedback" "9.44.0" + "@sentry-internal/replay" "9.44.0" + "@sentry-internal/replay-canvas" "9.44.0" + "@sentry/core" "9.44.0" + +"@sentry/core@9.44.0": + version "9.44.0" + resolved "https://registry.yarnpkg.com/@sentry/core/-/core-9.44.0.tgz#99be002aada90d70afb4f0293b1a8e186294cdca" + integrity sha512-U+KBNGgq/eXIj226CPtRk+n5dx0q1xGVvbLbyfAyeek9C/wxQ3f+mvqeVqF9cx8FfrWIOeDM1F8ISH5uRkjjQg== + +"@symfony/stimulus-bridge@^3.2.0 || ^4.0.0": + version "4.0.1" + resolved "https://registry.yarnpkg.com/@symfony/stimulus-bridge/-/stimulus-bridge-4.0.1.tgz#af0ddabc88254648a812fc328c0f407a6d5f40dc" + integrity sha512-+/kSQ4qFXMbZS+HjkhzOxwdN+60pMev7kzzDpQV/Tdm/iIWoxx5GDsVcdLaBb2783BVQHyrBP72JerF2SXTbTg== + dependencies: + "@hotwired/stimulus-webpack-helpers" "^1.0.1" + "@types/webpack-env" "^1.16.4" + loader-utils "^2.0.0 || ^3.0.0" + schema-utils "^3.0.0 || ^4.0.0" + +"@tailwindcss/node@4.1.11": + version "4.1.11" + resolved "https://registry.yarnpkg.com/@tailwindcss/node/-/node-4.1.11.tgz#d626af65fc9872e5e9d8884791d7e3856e945359" + integrity sha512-yzhzuGRmv5QyU9qLNg4GTlYI6STedBWRE7NjxP45CsFYYq9taI0zJXZBMqIC/c8fViNLhmrbpSFS57EoxUmD6Q== + dependencies: + "@ampproject/remapping" "^2.3.0" + enhanced-resolve "^5.18.1" + jiti "^2.4.2" + lightningcss "1.30.1" + magic-string "^0.30.17" + source-map-js "^1.2.1" + tailwindcss "4.1.11" + +"@tailwindcss/oxide-android-arm64@4.1.11": + version "4.1.11" + resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.1.11.tgz#1f387d8302f011b61c226deb0c3a1d2bd79c6915" + integrity sha512-3IfFuATVRUMZZprEIx9OGDjG3Ou3jG4xQzNTvjDoKmU9JdmoCohQJ83MYd0GPnQIu89YoJqvMM0G3uqLRFtetg== + +"@tailwindcss/oxide-darwin-arm64@4.1.11": + version "4.1.11" + resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.1.11.tgz#acd35ffb7e4eae83d0a3fe2f8ea36cfcc9b21f7e" + integrity sha512-ESgStEOEsyg8J5YcMb1xl8WFOXfeBmrhAwGsFxxB2CxY9evy63+AtpbDLAyRkJnxLy2WsD1qF13E97uQyP1lfQ== + +"@tailwindcss/oxide-darwin-x64@4.1.11": + version "4.1.11" + resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.1.11.tgz#a0022312993a3893d6ff0312d6e3c83c4636fef4" + integrity sha512-EgnK8kRchgmgzG6jE10UQNaH9Mwi2n+yw1jWmof9Vyg2lpKNX2ioe7CJdf9M5f8V9uaQxInenZkOxnTVL3fhAw== + +"@tailwindcss/oxide-freebsd-x64@4.1.11": + version "4.1.11" + resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.1.11.tgz#dd8e55eb0b88fe7995b8148c0e0ae5fa27092d22" + integrity sha512-xdqKtbpHs7pQhIKmqVpxStnY1skuNh4CtbcyOHeX1YBE0hArj2romsFGb6yUmzkq/6M24nkxDqU8GYrKrz+UcA== + +"@tailwindcss/oxide-linux-arm-gnueabihf@4.1.11": + version "4.1.11" + resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.1.11.tgz#02ee99090988847d3f13d277679012cbffcdde37" + integrity sha512-ryHQK2eyDYYMwB5wZL46uoxz2zzDZsFBwfjssgB7pzytAeCCa6glsiJGjhTEddq/4OsIjsLNMAiMlHNYnkEEeg== + +"@tailwindcss/oxide-linux-arm64-gnu@4.1.11": + version "4.1.11" + resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.1.11.tgz#4837559c102bebe65089879f6a0278ed473b4813" + integrity sha512-mYwqheq4BXF83j/w75ewkPJmPZIqqP1nhoghS9D57CLjsh3Nfq0m4ftTotRYtGnZd3eCztgbSPJ9QhfC91gDZQ== + +"@tailwindcss/oxide-linux-arm64-musl@4.1.11": + version "4.1.11" + resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.1.11.tgz#bec465112a13a1383558ff36afdf28b8a8cb9021" + integrity sha512-m/NVRFNGlEHJrNVk3O6I9ggVuNjXHIPoD6bqay/pubtYC9QIdAMpS+cswZQPBLvVvEF6GtSNONbDkZrjWZXYNQ== + +"@tailwindcss/oxide-linux-x64-gnu@4.1.11": + version "4.1.11" + resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.1.11.tgz#f9e47e6aa67ff77f32f7412bc9698d4278e101bf" + integrity sha512-YW6sblI7xukSD2TdbbaeQVDysIm/UPJtObHJHKxDEcW2exAtY47j52f8jZXkqE1krdnkhCMGqP3dbniu1Te2Fg== + +"@tailwindcss/oxide-linux-x64-musl@4.1.11": + version "4.1.11" + resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.1.11.tgz#7d6e8adcfb9bc84d8e2e2e8781d661edb9e41ba8" + integrity sha512-e3C/RRhGunWYNC3aSF7exsQkdXzQ/M+aYuZHKnw4U7KQwTJotnWsGOIVih0s2qQzmEzOFIJ3+xt7iq67K/p56Q== + +"@tailwindcss/oxide-wasm32-wasi@4.1.11": + version "4.1.11" + resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.1.11.tgz#a1762f4939c6ebaa824696fda2fd7db1b85fbed2" + integrity sha512-Xo1+/GU0JEN/C/dvcammKHzeM6NqKovG+6921MR6oadee5XPBaKOumrJCXvopJ/Qb5TH7LX/UAywbqrP4lax0g== + dependencies: + "@emnapi/core" "^1.4.3" + "@emnapi/runtime" "^1.4.3" + "@emnapi/wasi-threads" "^1.0.2" + "@napi-rs/wasm-runtime" "^0.2.11" + "@tybys/wasm-util" "^0.9.0" + tslib "^2.8.0" + +"@tailwindcss/oxide-win32-arm64-msvc@4.1.11": + version "4.1.11" + resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.1.11.tgz#70ba392dca0fa3707ebe27d2bd6ac3e69d35e3b7" + integrity sha512-UgKYx5PwEKrac3GPNPf6HVMNhUIGuUh4wlDFR2jYYdkX6pL/rn73zTq/4pzUm8fOjAn5L8zDeHp9iXmUGOXZ+w== + +"@tailwindcss/oxide-win32-x64-msvc@4.1.11": + version "4.1.11" + resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.1.11.tgz#cdcb9eea9225a346c0695f67f621990b0534763f" + integrity sha512-YfHoggn1j0LK7wR82TOucWc5LDCguHnoS879idHekmmiR7g9HUtMw9MI0NHatS28u/Xlkfi9w5RJWgz2Dl+5Qg== + +"@tailwindcss/oxide@4.1.11": + version "4.1.11" + resolved "https://registry.yarnpkg.com/@tailwindcss/oxide/-/oxide-4.1.11.tgz#569b668c99c337b7b8204bc5b6a833429755a05b" + integrity sha512-Q69XzrtAhuyfHo+5/HMgr1lAiPP/G40OMFAnws7xcFEYqcypZmdW8eGXaOUIeOl1dzPJBPENXgbjsOyhg2nkrg== + dependencies: + detect-libc "^2.0.4" + tar "^7.4.3" + optionalDependencies: + "@tailwindcss/oxide-android-arm64" "4.1.11" + "@tailwindcss/oxide-darwin-arm64" "4.1.11" + "@tailwindcss/oxide-darwin-x64" "4.1.11" + "@tailwindcss/oxide-freebsd-x64" "4.1.11" + "@tailwindcss/oxide-linux-arm-gnueabihf" "4.1.11" + "@tailwindcss/oxide-linux-arm64-gnu" "4.1.11" + "@tailwindcss/oxide-linux-arm64-musl" "4.1.11" + "@tailwindcss/oxide-linux-x64-gnu" "4.1.11" + "@tailwindcss/oxide-linux-x64-musl" "4.1.11" + "@tailwindcss/oxide-wasm32-wasi" "4.1.11" + "@tailwindcss/oxide-win32-arm64-msvc" "4.1.11" + "@tailwindcss/oxide-win32-x64-msvc" "4.1.11" + +"@tailwindcss/postcss@^4.1.10": + version "4.1.11" + resolved "https://registry.yarnpkg.com/@tailwindcss/postcss/-/postcss-4.1.11.tgz#4d844f7ff295c731ceab54934531bece7380ce0c" + integrity sha512-q/EAIIpF6WpLhKEuQSEVMZNMIY8KhWoAemZ9eylNAih9jxMGAYPPWBn3I9QL/2jZ+e7OEz/tZkX5HwbBR4HohA== + dependencies: + "@alloc/quick-lru" "^5.2.0" + "@tailwindcss/node" "4.1.11" + "@tailwindcss/oxide" "4.1.11" + postcss "^8.4.41" + tailwindcss "4.1.11" + +"@tailwindcss/vite@^4.1.10": + version "4.1.11" + resolved "https://registry.yarnpkg.com/@tailwindcss/vite/-/vite-4.1.11.tgz#9af1c9d328b31e67c6a0657500bcaa78be6df9f7" + integrity sha512-RHYhrR3hku0MJFRV+fN2gNbDNEh3dwKvY8XJvTxCSXeMOsCRSr+uKvDWQcbizrHgjML6ZmTE5OwMrl5wKcujCw== + dependencies: + "@tailwindcss/node" "4.1.11" + "@tailwindcss/oxide" "4.1.11" + tailwindcss "4.1.11" + +"@tybys/wasm-util@^0.10.0": + version "0.10.0" + resolved "https://registry.yarnpkg.com/@tybys/wasm-util/-/wasm-util-0.10.0.tgz#2fd3cd754b94b378734ce17058d0507c45c88369" + integrity sha512-VyyPYFlOMNylG45GoAe0xDoLwWuowvf92F9kySqzYh8vmYm7D2u4iUJKa1tOUpS70Ku13ASrOkS4ScXFsTaCNQ== + dependencies: + tslib "^2.4.0" + +"@tybys/wasm-util@^0.9.0": + version "0.9.0" + resolved "https://registry.yarnpkg.com/@tybys/wasm-util/-/wasm-util-0.9.0.tgz#3e75eb00604c8d6db470bf18c37b7d984a0e3355" + integrity sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw== + dependencies: + tslib "^2.4.0" + +"@types/backbone@1.4.15": + version "1.4.15" + resolved "https://registry.yarnpkg.com/@types/backbone/-/backbone-1.4.15.tgz#505323ab8fea11ecaec74cb3f73d569a4e5eb779" + integrity sha512-WWeKtYlsIMtDyLbbhkb96taJMEbfQBnuz7yw1u0pkphCOtksemoWhIXhK74VRCY9hbjnsH3rsJu2uUiFtnsEYg== + dependencies: + "@types/jquery" "*" + "@types/underscore" "*" + +"@types/estree@1.0.8": + version "1.0.8" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.8.tgz#958b91c991b1867ced318bedea0e215ee050726e" + integrity sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w== + +"@types/jquery@*": + version "3.5.32" + resolved "https://registry.yarnpkg.com/@types/jquery/-/jquery-3.5.32.tgz#3eb0da20611b92c7c49ebed6163b52a4fdc57def" + integrity sha512-b9Xbf4CkMqS02YH8zACqN1xzdxc3cO735Qe5AbSUFmyOiaWAbcpqh9Wna+Uk0vgACvoQHpWDg2rGdHkYPLmCiQ== + dependencies: + "@types/sizzle" "*" + +"@types/json-schema@^7.0.9": + version "7.0.15" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" + integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== + +"@types/minimatch@^3.0.3": + version "3.0.5" + resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.5.tgz#1001cc5e6a3704b83c236027e77f2f58ea010f40" + integrity sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ== + +"@types/react-dom@^19.0.0": + version "19.1.7" + resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-19.1.7.tgz#2863f2aa89e023592b981204ef92c5221b286410" + integrity sha512-i5ZzwYpqjmrKenzkoLM2Ibzt6mAsM7pxB6BCIouEVVmgiqaMj1TjaK7hnA36hbW5aZv20kx7Lw6hWzPWg0Rurw== + +"@types/react@^19.0.0": + version "19.1.9" + resolved "https://registry.yarnpkg.com/@types/react/-/react-19.1.9.tgz#f42b24f35474566a39b5c3a98e4d0c425b79a849" + integrity sha512-WmdoynAX8Stew/36uTSVMcLJJ1KRh6L3IZRx1PZ7qJtBqT3dYTgyDTx8H1qoRghErydW7xw9mSJ3wS//tCRpFA== + dependencies: + csstype "^3.0.2" + +"@types/sizzle@*": + version "2.3.9" + resolved "https://registry.yarnpkg.com/@types/sizzle/-/sizzle-2.3.9.tgz#d4597dbd4618264c414d7429363e3f50acb66ea2" + integrity sha512-xzLEyKB50yqCUPUJkIsrVvoWNfFUbIZI+RspLWt8u+tIW/BetMBZtgV2LY/2o+tYH8dRvQ+eoPf3NdhQCcLE2w== + +"@types/underscore@*": + version "1.13.0" + resolved "https://registry.yarnpkg.com/@types/underscore/-/underscore-1.13.0.tgz#dd8c034a92e5b8e24650c31af43d807c5340cee4" + integrity sha512-L6LBgy1f0EFQZ+7uSA57+n2g/s4Qs5r06Vwrwn0/nuK1de+adz00NWaztRQ30aEqw5qOaWbPI8u2cGQ52lj6VA== + +"@types/validator@10.11.3": + version "10.11.3" + resolved "https://registry.yarnpkg.com/@types/validator/-/validator-10.11.3.tgz#945799bef24a953c5bc02011ca8ad79331a3ef25" + integrity sha512-GKF2VnEkMmEeEGvoo03ocrP9ySMuX1ypKazIYMlsjfslfBMhOAtC5dmEWKdJioW4lJN7MZRS88kalTsVClyQ9w== + +"@types/webpack-env@^1.16.4": + version "1.18.8" + resolved "https://registry.yarnpkg.com/@types/webpack-env/-/webpack-env-1.18.8.tgz#71f083718c094204d7b64443701d32f1db3989e3" + integrity sha512-G9eAoJRMLjcvN4I08wB5I7YofOb/kaJNd5uoCMX+LbKXTPCF+ZIHuqTnFaK9Jz1rgs035f9JUPUhNFtqgucy/A== + +"@usewaypoint/block-avatar@^0.0.3": + version "0.0.3" + resolved "https://registry.yarnpkg.com/@usewaypoint/block-avatar/-/block-avatar-0.0.3.tgz#f63510ed82690a2b4b68ead62a191d80b20c2957" + integrity sha512-3BM6P4ztMmqDbSijtVQqI1canRkcENOEHZ2X9BYNv8BZGJbmitTrzANvwmmYXfFEuWPCAyABvujdZds15Zg8Qg== + +"@usewaypoint/block-button@^0.0.3": + version "0.0.3" + resolved "https://registry.yarnpkg.com/@usewaypoint/block-button/-/block-button-0.0.3.tgz#1e9257601b452ab5687ce806cd24efd88a1185f3" + integrity sha512-LXSI3FmCTv13voYX4wdHY7iJdsfyRfpDJZCFKSun5EF1j9FXrqMDGScpk/yokopkQWvWkYXQNAne7W0yWhRQlg== + +"@usewaypoint/block-columns-container@^0.0.3": + version "0.0.3" + resolved "https://registry.yarnpkg.com/@usewaypoint/block-columns-container/-/block-columns-container-0.0.3.tgz#e6d9148f06523aa964a41f937e0b295c165d59d2" + integrity sha512-r5jaojU1Fr6Svtl0a9dDlBHgslJQ04M+XaXaEO+GZ12+35fdAirpLkrEhuyBIA1FFXzRTG740wkbkr++iv1kuA== + +"@usewaypoint/block-container@^0.0.2": + version "0.0.2" + resolved "https://registry.yarnpkg.com/@usewaypoint/block-container/-/block-container-0.0.2.tgz#de06a31242c799c7d1caaf80ab91107ca4b25fc5" + integrity sha512-li9GVdiahVpJ+MNRdkoCkP6/hBTdcpaLRGpaFBSQRkVt+cYAeB7qPNIo+242hUvVTm5Qky8ceGLDVblGYSZb7A== + +"@usewaypoint/block-divider@^0.0.4": + version "0.0.4" + resolved "https://registry.yarnpkg.com/@usewaypoint/block-divider/-/block-divider-0.0.4.tgz#29a938293a76ad8a5e9738d4ac4370f9fa3efbd8" + integrity sha512-q54ydWvKdg7Zwc4hzIwE6i/mC8dFYxfPRACEEEyu2dvSNa9cbKFIsPD9ipVSntK+Ib3Ml84uT4aHQmOlzP6hZA== + +"@usewaypoint/block-heading@^0.0.3": + version "0.0.3" + resolved "https://registry.yarnpkg.com/@usewaypoint/block-heading/-/block-heading-0.0.3.tgz#a300894acfc39556d1577be17a2d7b3d58c7c95e" + integrity sha512-1dMrf1U34nq2FuwTUfsq+hBOdLQz1H+lVMEH9xvyCq5I7nSXCzpeo7QgumZ3zZEHtu3QgSEGafJaZyrj2paC0w== + +"@usewaypoint/block-html@^0.0.3": + version "0.0.3" + resolved "https://registry.yarnpkg.com/@usewaypoint/block-html/-/block-html-0.0.3.tgz#296550235b2974679afcad4772f7bc56cf8ba520" + integrity sha512-ZI9oYDibMzs5y/YzfvUwuUBzHDKHOIjiStiVCvlmIA+VtJTycqT8X/ECjn+KmwesLTg5DhG07CC4WY2SL3AnJw== + +"@usewaypoint/block-image@^0.0.5": + version "0.0.5" + resolved "https://registry.yarnpkg.com/@usewaypoint/block-image/-/block-image-0.0.5.tgz#e9e866673d2bbdb628fd57c0798ba70e3cdc3b12" + integrity sha512-b66jAXF79idsrIRc2QoBlZctIXdqg/qOAL7/QvKvENZH2KmuXoZhEUx+Z7sACvEQD/VI0u7TK5msDsA5S0/oVQ== + +"@usewaypoint/block-spacer@^0.0.3": + version "0.0.3" + resolved "https://registry.yarnpkg.com/@usewaypoint/block-spacer/-/block-spacer-0.0.3.tgz#6655628dd74085ffcf3fbcd0f0aa286e40e69a10" + integrity sha512-CCcMtwcpeC2rHvawQdh5f0Hez7o4xA/edWl/6I3RuA6Yb6STyyrGjmPFs2ZxHQsLOGUK+0OvBenuHlSTCZwuuA== + +"@usewaypoint/block-text@^0.0.6": + version "0.0.6" + resolved "https://registry.yarnpkg.com/@usewaypoint/block-text/-/block-text-0.0.6.tgz#b08322300e9a9d69111c29d2183757cc8aab7cb9" + integrity sha512-tsKTNLXUYs1PkM8G5sgIhO3KnW1IFTx2q+lnq5Y4prHeHNBrArez5BbwAyvwBKnhcIt5c4gYL2CSklIU4+hLLw== + dependencies: + insane "^2.6.2" + marked "^12.0.2" + +"@usewaypoint/document-core@^0.0.6": + version "0.0.6" + resolved "https://registry.yarnpkg.com/@usewaypoint/document-core/-/document-core-0.0.6.tgz#c97468c84c85ccac46a06f82ac332e20e415cfb7" + integrity sha512-Hg10gszVCZRJhA4nIWwAi2rTXuoxPL+ATMe0hU243PFBIUZOwDIQus4XZSeoHsenMCq1uBFCRiFW4hl2+tVwgA== + +"@usewaypoint/email-builder@^0.0.8": + version "0.0.8" + resolved "https://registry.yarnpkg.com/@usewaypoint/email-builder/-/email-builder-0.0.8.tgz#457829481998e512b27afe3ab607c7fc48bc2f80" + integrity sha512-gP1Us3n/rh9GoCnJRHN8INqYD9qPJ0wErm0SCjz6ng8IGSBBL+k0fFKD7l1mT3BflZSjCl6heqRDu9aRw1AcFw== + dependencies: + "@usewaypoint/block-avatar" "^0.0.3" + "@usewaypoint/block-button" "^0.0.3" + "@usewaypoint/block-columns-container" "^0.0.3" + "@usewaypoint/block-container" "^0.0.2" + "@usewaypoint/block-divider" "^0.0.4" + "@usewaypoint/block-heading" "^0.0.3" + "@usewaypoint/block-html" "^0.0.3" + "@usewaypoint/block-image" "^0.0.5" + "@usewaypoint/block-spacer" "^0.0.3" + "@usewaypoint/block-text" "^0.0.6" + "@usewaypoint/document-core" "^0.0.6" + +acorn-jsx@^5.2.0: + version "5.3.2" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== + +acorn@^7.1.1: + version "7.4.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== + +ajv-formats@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520" + integrity sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA== + dependencies: + ajv "^8.0.0" + +ajv-keywords@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz#69d4d385a4733cdbeab44964a1170a88f87f0e16" + integrity sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw== + dependencies: + fast-deep-equal "^3.1.3" + +ajv@^8.0.0, ajv@^8.9.0: + version "8.17.1" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.17.1.tgz#37d9a5c776af6bc92d7f4f9510eba4c0a60d11a6" + integrity sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g== + dependencies: + fast-deep-equal "^3.1.3" + fast-uri "^3.0.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + +amdefine@>=0.0.4: + version "1.0.1" + resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" + integrity sha512-S2Hw0TtNkMJhIabBwIojKL9YHO5T0n5eNqWJ7Lrlel/zDbftQpxpapi8tZs3X1HWa+u+QeydGmzzNU0m09+Rcg== + +ansi-escapes@^1.1.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" + integrity sha512-wiXutNjDUlNEDWHcYH3jtZUhd3c4/VojassD8zHdHCY13xbZy2XbW+NKQwA0tWGBVzDA9qEzYwfoSsWmviidhw== + +ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA== + +ansi-regex@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.1.tgz#123d6479e92ad45ad897d4054e3c7ca7db4944e1" + integrity sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw== + +ansi-styles@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" + integrity sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA== + +ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +array-differ@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-3.0.0.tgz#3cbb3d0f316810eafcc47624734237d6aee4ae6b" + integrity sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg== + +array-union@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== + +arrify@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" + integrity sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug== + +assignment@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/assignment/-/assignment-2.0.0.tgz#ffd17b21bf5d6b22e777b989681a815456a3dd3e" + integrity sha512-naMULXjtgCs9SVUEtyvJNt68aF18em7/W+dhbR59kbz9cXWPEvUkCun2tqlgqRPSqZaKPpqLc5ZnwL8jVmJRvw== + +autoprefixer@^10.4.21: + version "10.4.21" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.21.tgz#77189468e7a8ad1d9a37fbc08efc9f480cf0a95d" + integrity sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ== + dependencies: + browserslist "^4.24.4" + caniuse-lite "^1.0.30001702" + fraction.js "^4.3.7" + normalize-range "^0.1.2" + picocolors "^1.1.1" + postcss-value-parser "^4.2.0" + +babel-polyfill@6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-polyfill/-/babel-polyfill-6.23.0.tgz#8364ca62df8eafb830499f699177466c3b03499d" + integrity sha512-0l7mVU+LrQ2X/ZTUq63T5i3VyR2aTgcRTFmBcD6djQ/Fek6q1A9t5u0F4jZVYHzp78jwWAzGfLpAY1b4/I3lfg== + dependencies: + babel-runtime "^6.22.0" + core-js "^2.4.0" + regenerator-runtime "^0.10.0" + +babel-runtime@^6.22.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" + integrity sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g== + dependencies: + core-js "^2.4.0" + regenerator-runtime "^0.11.0" + +backbone-undo@0.2.6: + version "0.2.6" + resolved "https://registry.yarnpkg.com/backbone-undo/-/backbone-undo-0.2.6.tgz#00c4d78ab2425c18a76f2a96a1eee181560a5d8d" + integrity sha512-AsfpNiljLXlk7TcffDUu3EAUq7CxWbyTNwARWrql5XTzN4vh6WzEEBZYaKK4kTTz+iW1tSzqUooaGRIwO83kWA== + dependencies: + backbone ">=1.0.0" + underscore ">=1.4.4" + +backbone@1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/backbone/-/backbone-1.4.1.tgz#099a78184bc07b034048a8332229c2ccca1e3e62" + integrity sha512-ADy1ztN074YkWbHi8ojJVFe3vAanO/lrzMGZWUClIP7oDD/Pjy2vrASraUP+2EVCfIiTtCW4FChVow01XneivA== + dependencies: + underscore ">=1.8.3" + +backbone@>=1.0.0: + version "1.6.1" + resolved "https://registry.yarnpkg.com/backbone/-/backbone-1.6.1.tgz#6e067777767f54b9e150d3de825f7d66e7ed77d0" + integrity sha512-YQzWxOrIgL6BoFnZjThVN99smKYhyEXXFyJJ2lsF1wJLyo4t+QjmkLrH8/fN22FZ4ykF70Xq7PgTugJVR4zS9Q== + dependencies: + underscore ">=1.8.3" + +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== + +brace-expansion@^1.1.7: + version "1.1.12" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.12.tgz#ab9b454466e5a8cc3a187beaad580412a9c5b843" + integrity sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" + integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== + dependencies: + fill-range "^7.1.1" + +browserslist@^4.24.4: + version "4.25.1" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.25.1.tgz#ba9e8e6f298a1d86f829c9b975e07948967bb111" + integrity sha512-KGj0KoOMXLpSNkkEI6Z6mShmQy0bc1I+T7K9N81k4WWMrfz+6fQ6es80B/YLAeRoKvjYE1YSHHOW1qe9xIVzHw== + dependencies: + caniuse-lite "^1.0.30001726" + electron-to-chromium "^1.5.173" + node-releases "^2.0.19" + update-browserslist-db "^1.1.3" + +buffer-from@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" + integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== + +caniuse-lite@^1.0.30001702, caniuse-lite@^1.0.30001726: + version "1.0.30001731" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001731.tgz#277c07416ea4613ec564e5b0ffb47e7b60f32e2f" + integrity sha512-lDdp2/wrOmTRWuoB5DpfNkC0rJDU8DqRa6nYL6HK6sytw70QMopt/NIc/9SM7ylItlBWfACXk0tEn37UWM/+mg== + +chalk@1.1.3, chalk@^1.0.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" + integrity sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A== + dependencies: + ansi-styles "^2.2.1" + escape-string-regexp "^1.0.2" + has-ansi "^2.0.0" + strip-ansi "^3.0.0" + supports-color "^2.0.0" + +chalk@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" + integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +chance@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/chance/-/chance-1.1.3.tgz#414f08634ee479c7a316b569050ea20751b82dd3" + integrity sha512-XeJsdoVAzDb1WRPRuMBesRSiWpW1uNTo5Fd7mYxPJsAfgX71+jfuCOHOdbyBz2uAUZ8TwKcXgWk3DMedFfJkbg== + +chardet@^0.4.0: + version "0.4.2" + resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2" + integrity sha512-j/Toj7f1z98Hh2cYo2BVr85EpIRWqUi7rtRSGxh/cqUjqrnJe9l9UE7IUGd2vQ2p+kSHLkSzObQPZPLUC6TQwg== + +charenc@~0.0.1: + version "0.0.2" + resolved "https://registry.yarnpkg.com/charenc/-/charenc-0.0.2.tgz#c0a1d2f3a7092e03774bfa83f14c0fc5790a8667" + integrity sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA== + +chokidar@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-4.0.3.tgz#7be37a4c03c9aee1ecfe862a4a23b2c70c205d30" + integrity sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA== + dependencies: + readdirp "^4.0.1" + +chownr@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-3.0.0.tgz#9855e64ecd240a9cc4267ce8a4aa5d24a1da15e4" + integrity sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g== + +class-validator@0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/class-validator/-/class-validator-0.11.0.tgz#5fca8b8a957c738a6749391e03ee81fad375dc4a" + integrity sha512-niAmmSPFku9xsnpYYrddy8NZRrCX3yyoZ/rgPKOilE5BG0Ma1eVCIxpR4X0LasL/6BzbYzsutG+mSbAXlh4zNw== + dependencies: + "@types/validator" "10.11.3" + google-libphonenumber "^3.1.6" + validator "12.0.0" + +cli-cursor@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" + integrity sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw== + dependencies: + restore-cursor "^2.0.0" + +cli-width@^2.0.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48" + integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw== + +codemirror-formatting@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/codemirror-formatting/-/codemirror-formatting-1.0.0.tgz#879cc1fdd9018343c1d5511769ce5360d705ebf2" + integrity sha512-br9yM6eJI3pJHekEnoyHaBEb1B7XxxDjju+vRyBe8QGLp5saTIXXkZ+eFCTqXSAtI8QEZDFVEX2/SOjH2sVWRQ== + +codemirror@5.63.0: + version "5.63.0" + resolved "https://registry.yarnpkg.com/codemirror/-/codemirror-5.63.0.tgz#070a699108badd9c118b7261ac2e9793acdbb149" + integrity sha512-KlLWRPggDg2rBD1Mx7/EqEhaBdy+ybBCVh/efgjBDsPpMeEu6MbTAJzIT4TuCzvmbTEgvKOGzVT6wdBTNusqrg== + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +commander@4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-4.0.1.tgz#b67622721785993182e807f4883633e6401ba53c" + integrity sha512-IPF4ouhCP+qdlcmCedhxX4xiGBPyigb8v5NeUp+0LyhwLgxMqyp3S0vl7TAPfS/hiP7FC3caI/PB9lTmP8r1NA== + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== + +core-js@^2.4.0: + version "2.6.12" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec" + integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== + +crypt@~0.0.1: + version "0.0.2" + resolved "https://registry.yarnpkg.com/crypt/-/crypt-0.0.2.tgz#88d7ff7ec0dfb86f713dc87bbb42d044d3e6c41b" + integrity sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow== + +csstype@^3.0.2: + version "3.1.3" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" + integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== + +deep-is@~0.1.3: + version "0.1.4" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" + integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== + +detect-libc@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" + integrity sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg== + +detect-libc@^2.0.3, detect-libc@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.4.tgz#f04715b8ba815e53b4d8109655b6508a6865a7e8" + integrity sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA== + +electron-to-chromium@^1.5.173: + version "1.5.194" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.194.tgz#05e541c3373ba8d967a65c92bc14d60608908236" + integrity sha512-SdnWJwSUot04UR51I2oPD8kuP2VI37/CADR1OHsFOUzZIvfWJBO6q11k5P/uKNyTT3cdOsnyjkrZ+DDShqYqJA== + +encoding@^0.1.11: + version "0.1.13" + resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" + integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== + dependencies: + iconv-lite "^0.6.2" + +enhanced-resolve@^5.18.1: + version "5.18.2" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.18.2.tgz#7903c5b32ffd4b2143eeb4b92472bd68effd5464" + integrity sha512-6Jw4sE1maoRJo3q8MsSIn2onJFbLTOjY9hlx4DZXmOKvLRd1Ok2kXmAGXaafL2+ijsJZ1ClYbl/pmqr9+k4iUQ== + dependencies: + graceful-fs "^4.2.4" + tapable "^2.2.0" + +esbuild@^0.25.0: + version "0.25.8" + resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.25.8.tgz#482d42198b427c9c2f3a81b63d7663aecb1dda07" + integrity sha512-vVC0USHGtMi8+R4Kz8rt6JhEWLxsv9Rnu/lGYbPR8u47B+DCBksq9JarW0zOO7bs37hyOK1l2/oqtbciutL5+Q== + optionalDependencies: + "@esbuild/aix-ppc64" "0.25.8" + "@esbuild/android-arm" "0.25.8" + "@esbuild/android-arm64" "0.25.8" + "@esbuild/android-x64" "0.25.8" + "@esbuild/darwin-arm64" "0.25.8" + "@esbuild/darwin-x64" "0.25.8" + "@esbuild/freebsd-arm64" "0.25.8" + "@esbuild/freebsd-x64" "0.25.8" + "@esbuild/linux-arm" "0.25.8" + "@esbuild/linux-arm64" "0.25.8" + "@esbuild/linux-ia32" "0.25.8" + "@esbuild/linux-loong64" "0.25.8" + "@esbuild/linux-mips64el" "0.25.8" + "@esbuild/linux-ppc64" "0.25.8" + "@esbuild/linux-riscv64" "0.25.8" + "@esbuild/linux-s390x" "0.25.8" + "@esbuild/linux-x64" "0.25.8" + "@esbuild/netbsd-arm64" "0.25.8" + "@esbuild/netbsd-x64" "0.25.8" + "@esbuild/openbsd-arm64" "0.25.8" + "@esbuild/openbsd-x64" "0.25.8" + "@esbuild/openharmony-arm64" "0.25.8" + "@esbuild/sunos-x64" "0.25.8" + "@esbuild/win32-arm64" "0.25.8" + "@esbuild/win32-ia32" "0.25.8" + "@esbuild/win32-x64" "0.25.8" + +escalade@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" + integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== + +escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== + +escodegen-wallaby@1.6.27: + version "1.6.27" + resolved "https://registry.yarnpkg.com/escodegen-wallaby/-/escodegen-wallaby-1.6.27.tgz#c2d3ca8b6fd4d5f0d3f770f7b1d29b958078fdb2" + integrity sha512-DFXbfLTNa/wiQRgqSseKhmzyDhwWJ4c/6IwsdAgA6qYL0ntsmSuuTMovEbA/8oCanSGkUR1qaLsDgKiWPllnjg== + dependencies: + esprima "^2.7.1" + estraverse "^1.9.1" + esutils "^2.0.2" + optionator "^0.8.1" + optionalDependencies: + source-map "~0.2.0" + +eslint-visitor-keys@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" + integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== + +espree@^6.1.2: + version "6.2.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-6.2.1.tgz#77fc72e1fd744a2052c20f38a5b575832e82734a" + integrity sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw== + dependencies: + acorn "^7.1.1" + acorn-jsx "^5.2.0" + eslint-visitor-keys "^1.1.0" + +esprima@^2.7.1: + version "2.7.3" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581" + integrity sha512-OarPfz0lFCiW4/AV2Oy1Rp9qu0iusTKqykwTspGCZtPxmF81JR4MmIebvF1F9+UOKth2ZubLQ4XGGaU+hSn99A== + +estraverse@4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== + +estraverse@^1.9.1: + version "1.9.3" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.9.3.tgz#af67f2dc922582415950926091a4005d29c9bb44" + integrity sha512-25w1fMXQrGdoquWnScXZGckOv+Wes+JDnuN/+7ex3SauFRS72r2lFDec0EKPt2YD1wUJ/IrfEex+9yp4hfSOJA== + +esutils@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== + +eventemitter3@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.0.tgz#d65176163887ee59f386d64c82610b696a4a74eb" + integrity sha512-qerSRB0p+UDEssxTtm6EDKcE7W4OaoisfIMl4CngyEhjpYglocpNg6UEqCvemdGhosAsg4sO2dXJOdyBifPGCg== + +external-editor@^2.0.1: + version "2.2.0" + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.2.0.tgz#045511cfd8d133f3846673d1047c154e214ad3d5" + integrity sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A== + dependencies: + chardet "^0.4.0" + iconv-lite "^0.4.17" + tmp "^0.0.33" + +fast-deep-equal@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-levenshtein@~2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== + +fast-uri@^3.0.1: + version "3.0.6" + resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.0.6.tgz#88f130b77cfaea2378d56bf970dea21257a68748" + integrity sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw== + +fdir@^6.4.4, fdir@^6.4.6: + version "6.4.6" + resolved "https://registry.yarnpkg.com/fdir/-/fdir-6.4.6.tgz#2b268c0232697063111bbf3f64810a2a741ba281" + integrity sha512-hiFoqpyZcfNm1yc4u8oWCf9A2c4D3QjCrks3zmoVKVxpQRzmPNar1hUJcBG2RQHvEVGDN+Jm81ZheVLAQMK6+w== + +figures@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" + integrity sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA== + dependencies: + escape-string-regexp "^1.0.5" + +fill-range@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" + integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== + dependencies: + to-regex-range "^5.0.1" + +fraction.js@^4.3.7: + version "4.3.7" + resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.3.7.tgz#06ca0085157e42fda7f9e726e79fefc4068840f7" + integrity sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew== + +fsevents@~2.3.2, fsevents@~2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + +google-libphonenumber@^3.1.6: + version "3.2.42" + resolved "https://registry.yarnpkg.com/google-libphonenumber/-/google-libphonenumber-3.2.42.tgz#deac6d626bb57540449a844154d84e91d8da7df1" + integrity sha512-60jm6Lu72WmlUJXUBJmmuZlHG2vDJ2gQ9pL5gcFsSe1Q4eigsm0Z1ayNHjMgqGUl0zey8JqKtO4QCHPV+5LCNQ== + +graceful-fs@^4.2.4: + version "4.2.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" + integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== + +grapesjs@^0.22.10: + version "0.22.12" + resolved "https://registry.yarnpkg.com/grapesjs/-/grapesjs-0.22.12.tgz#19cd383345be9cae78c640e58709d6efd66d99b5" + integrity sha512-1zhUKoKZCDyN0j/Z19/lJ25UBR4GUHtyeRMHgewskRiQSdb/du+9L/R/q/sijmp1cKPxQZihzvwoc69Ya/pXIQ== + dependencies: + "@types/backbone" "1.4.15" + backbone "1.4.1" + backbone-undo "0.2.6" + codemirror "5.63.0" + codemirror-formatting "1.0.0" + html-entities "~1.4.0" + promise-polyfill "8.3.0" + underscore "1.13.1" + +handlebars@^4.7.8: + version "4.7.8" + resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.8.tgz#41c42c18b1be2365439188c77c6afae71c0cd9e9" + integrity sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ== + dependencies: + minimist "^1.2.5" + neo-async "^2.6.2" + source-map "^0.6.1" + wordwrap "^1.0.0" + optionalDependencies: + uglify-js "^3.1.4" + +has-ansi@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" + integrity sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg== + dependencies: + ansi-regex "^2.0.0" + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +he@0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/he/-/he-0.5.0.tgz#2c05ffaef90b68e860f3fd2b54ef580989277ee2" + integrity sha512-DoufbNNOFzwRPy8uecq+j+VCPQ+JyDelHTmSgygrA5TsR8Cbw4Qcir5sGtWiusB4BdT89nmlaVDhSJOqC/33vw== + +html-entities@~1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.4.0.tgz#cfbd1b01d2afaf9adca1b10ae7dffab98c71d2dc" + integrity sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA== + +iconv-lite@^0.4.17: + version "0.4.24" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== + dependencies: + safer-buffer ">= 2.1.2 < 3" + +iconv-lite@^0.6.2: + version "0.6.3" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" + integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== + dependencies: + safer-buffer ">= 2.1.2 < 3.0.0" + +immutable@^5.0.2: + version "5.1.3" + resolved "https://registry.yarnpkg.com/immutable/-/immutable-5.1.3.tgz#e6486694c8b76c37c063cca92399fa64098634d4" + integrity sha512-+chQdDfvscSF1SJqv2gn4SRO2ZyS3xL3r7IW/wWEEzrzLisnOlKiQu5ytC/BVNcS15C39WT2Hg/bjKjDMcu+zg== + +inquirer@3.0.6: + version "3.0.6" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.0.6.tgz#e04aaa9d05b7a3cb9b0f407d04375f0447190347" + integrity sha512-thluxTGBXUGb8DuQcvH9/CM/CrcGyB5xUpWc9x6Slqcq1z/hRr2a6KxUpX4ddRfmbe0hg3E4jTvo5833aWz3BA== + dependencies: + ansi-escapes "^1.1.0" + chalk "^1.0.0" + cli-cursor "^2.1.0" + cli-width "^2.0.0" + external-editor "^2.0.1" + figures "^2.0.0" + lodash "^4.3.0" + mute-stream "0.0.7" + run-async "^2.2.0" + rx "^4.1.0" + string-width "^2.0.0" + strip-ansi "^3.0.0" + through "^2.3.6" + +insane@^2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/insane/-/insane-2.6.2.tgz#c2ab68bb3e006ab451560d1b446917329c0a8120" + integrity sha512-BqEL1CJsjJi+/C/zKZxv31zs3r6zkLH5Nz1WMFb7UBX2KHY2yXDpbFTSEmNHzomBbGDysIfkTX55A0mQZ2CQiw== + dependencies: + assignment "2.0.0" + he "0.5.0" + +inversify@5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/inversify/-/inversify-5.0.1.tgz#500d709b1434896ce5a0d58915c4a4210e34fb6e" + integrity sha512-Ieh06s48WnEYGcqHepdsJUIJUXpwH5o5vodAX+DK2JA/gjy4EbEcQZxw+uFfzysmKjiLXGYwNG3qDZsKVMcINQ== + +is-buffer@~1.1.1: + version "1.1.6" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + +is-fullwidth-code-point@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + integrity sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w== + +is-glob@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== + dependencies: + is-extglob "^2.1.1" + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +is-stream@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + integrity sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ== + +javascript-obfuscator@^0.18.1: + version "0.18.8" + resolved "https://registry.yarnpkg.com/javascript-obfuscator/-/javascript-obfuscator-0.18.8.tgz#967276026c47f5967d0091b1d392f035f5bb8daa" + integrity sha512-lh/PT3dwLgv2vP9ymsmNZqjpbkDq1SQqpxLYtAerLzmYgHlQOzVpUe3NbFb8tUFNylMeg6ez1iEpA7oOQw/7Tw== + dependencies: + "@babel/runtime" "7.7.4" + chalk "3.0.0" + chance "1.1.3" + class-validator "0.11.0" + commander "4.0.1" + escodegen-wallaby "1.6.27" + espree "^6.1.2" + estraverse "4.3.0" + eventemitter3 "4.0.0" + inversify "5.0.1" + js-string-escape "1.0.1" + md5 "2.2.1" + mkdirp "0.5.1" + multimatch "4.0.0" + opencollective "1.0.3" + reflect-metadata "0.1.13" + source-map-support "0.5.16" + string-template "1.0.0" + tslib "1.10.0" + +jiti@^2.4.2: + version "2.5.1" + resolved "https://registry.yarnpkg.com/jiti/-/jiti-2.5.1.tgz#bd099c1c2be1c59bbea4e5adcd127363446759d0" + integrity sha512-twQoecYPiVA5K/h6SxtORw/Bs3ar+mLUtoPSc7iMXzQzK8d7eJ/R09wmTwAjiamETn1cXYPGfNnu7DMoHgu12w== + +js-string-escape@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/js-string-escape/-/js-string-escape-1.0.1.tgz#e2625badbc0d67c7533e9edc1068c587ae4137ef" + integrity sha512-Smw4xcfIQ5LVjAOuJCvN/zIodzA/BBSsluuoSykP+lUvScIi4U6RJLfwHet5cxFnCswUjISV8oAXaqaJDY3chg== + +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + +levn@~0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" + integrity sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA== + dependencies: + prelude-ls "~1.1.2" + type-check "~0.3.2" + +lightningcss-darwin-arm64@1.30.1: + version "1.30.1" + resolved "https://registry.yarnpkg.com/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.30.1.tgz#3d47ce5e221b9567c703950edf2529ca4a3700ae" + integrity sha512-c8JK7hyE65X1MHMN+Viq9n11RRC7hgin3HhYKhrMyaXflk5GVplZ60IxyoVtzILeKr+xAJwg6zK6sjTBJ0FKYQ== + +lightningcss-darwin-x64@1.30.1: + version "1.30.1" + resolved "https://registry.yarnpkg.com/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.30.1.tgz#e81105d3fd6330860c15fe860f64d39cff5fbd22" + integrity sha512-k1EvjakfumAQoTfcXUcHQZhSpLlkAuEkdMBsI/ivWw9hL+7FtilQc0Cy3hrx0AAQrVtQAbMI7YjCgYgvn37PzA== + +lightningcss-freebsd-x64@1.30.1: + version "1.30.1" + resolved "https://registry.yarnpkg.com/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.30.1.tgz#a0e732031083ff9d625c5db021d09eb085af8be4" + integrity sha512-kmW6UGCGg2PcyUE59K5r0kWfKPAVy4SltVeut+umLCFoJ53RdCUWxcRDzO1eTaxf/7Q2H7LTquFHPL5R+Gjyig== + +lightningcss-linux-arm-gnueabihf@1.30.1: + version "1.30.1" + resolved "https://registry.yarnpkg.com/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.30.1.tgz#1f5ecca6095528ddb649f9304ba2560c72474908" + integrity sha512-MjxUShl1v8pit+6D/zSPq9S9dQ2NPFSQwGvxBCYaBYLPlCWuPh9/t1MRS8iUaR8i+a6w7aps+B4N0S1TYP/R+Q== + +lightningcss-linux-arm64-gnu@1.30.1: + version "1.30.1" + resolved "https://registry.yarnpkg.com/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.30.1.tgz#eee7799726103bffff1e88993df726f6911ec009" + integrity sha512-gB72maP8rmrKsnKYy8XUuXi/4OctJiuQjcuqWNlJQ6jZiWqtPvqFziskH3hnajfvKB27ynbVCucKSm2rkQp4Bw== + +lightningcss-linux-arm64-musl@1.30.1: + version "1.30.1" + resolved "https://registry.yarnpkg.com/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.30.1.tgz#f2e4b53f42892feeef8f620cbb889f7c064a7dfe" + integrity sha512-jmUQVx4331m6LIX+0wUhBbmMX7TCfjF5FoOH6SD1CttzuYlGNVpA7QnrmLxrsub43ClTINfGSYyHe2HWeLl5CQ== + +lightningcss-linux-x64-gnu@1.30.1: + version "1.30.1" + resolved "https://registry.yarnpkg.com/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.30.1.tgz#2fc7096224bc000ebb97eea94aea248c5b0eb157" + integrity sha512-piWx3z4wN8J8z3+O5kO74+yr6ze/dKmPnI7vLqfSqI8bccaTGY5xiSGVIJBDd5K5BHlvVLpUB3S2YCfelyJ1bw== + +lightningcss-linux-x64-musl@1.30.1: + version "1.30.1" + resolved "https://registry.yarnpkg.com/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.30.1.tgz#66dca2b159fd819ea832c44895d07e5b31d75f26" + integrity sha512-rRomAK7eIkL+tHY0YPxbc5Dra2gXlI63HL+v1Pdi1a3sC+tJTcFrHX+E86sulgAXeI7rSzDYhPSeHHjqFhqfeQ== + +lightningcss-win32-arm64-msvc@1.30.1: + version "1.30.1" + resolved "https://registry.yarnpkg.com/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.30.1.tgz#7d8110a19d7c2d22bfdf2f2bb8be68e7d1b69039" + integrity sha512-mSL4rqPi4iXq5YVqzSsJgMVFENoa4nGTT/GjO2c0Yl9OuQfPsIfncvLrEW6RbbB24WtZ3xP/2CCmI3tNkNV4oA== + +lightningcss-win32-x64-msvc@1.30.1: + version "1.30.1" + resolved "https://registry.yarnpkg.com/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.30.1.tgz#fd7dd008ea98494b85d24b4bea016793f2e0e352" + integrity sha512-PVqXh48wh4T53F/1CCu8PIPCxLzWyCnn/9T5W1Jpmdy5h9Cwd+0YQS6/LwhHXSafuc61/xg9Lv5OrCby6a++jg== + +lightningcss@1.30.1: + version "1.30.1" + resolved "https://registry.yarnpkg.com/lightningcss/-/lightningcss-1.30.1.tgz#78e979c2d595bfcb90d2a8c0eb632fe6c5bfed5d" + integrity sha512-xi6IyHML+c9+Q3W0S4fCQJOym42pyurFiJUHEcEyHS0CeKzia4yZDEsLlqOFykxOdHpNy0NmvVO31vcSqAxJCg== + dependencies: + detect-libc "^2.0.3" + optionalDependencies: + lightningcss-darwin-arm64 "1.30.1" + lightningcss-darwin-x64 "1.30.1" + lightningcss-freebsd-x64 "1.30.1" + lightningcss-linux-arm-gnueabihf "1.30.1" + lightningcss-linux-arm64-gnu "1.30.1" + lightningcss-linux-arm64-musl "1.30.1" + lightningcss-linux-x64-gnu "1.30.1" + lightningcss-linux-x64-musl "1.30.1" + lightningcss-win32-arm64-msvc "1.30.1" + lightningcss-win32-x64-msvc "1.30.1" + +"loader-utils@^2.0.0 || ^3.0.0": + version "3.3.1" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-3.3.1.tgz#735b9a19fd63648ca7adbd31c2327dfe281304e5" + integrity sha512-FMJTLMXfCLMLfJxcX9PFqX5qD88Z5MRGaZCVzfuqeZSPsyiBzs+pahDQjbIWz2QIzPZz0NX9Zy4FX3lmK6YHIg== + +lodash@^4.3.0: + version "4.17.21" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + +magic-string@^0.30.17: + version "0.30.17" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.17.tgz#450a449673d2460e5bbcfba9a61916a1714c7453" + integrity sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA== + dependencies: + "@jridgewell/sourcemap-codec" "^1.5.0" + +marked@^12.0.2: + version "12.0.2" + resolved "https://registry.yarnpkg.com/marked/-/marked-12.0.2.tgz#b31578fe608b599944c69807b00f18edab84647e" + integrity sha512-qXUm7e/YKFoqFPYPa3Ukg9xlI5cyAtGmyEIzMfW//m6kXwCy2Ps9DYf5ioijFKQ8qyuscrHoY04iJGctu2Kg0Q== + +md5@2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/md5/-/md5-2.2.1.tgz#53ab38d5fe3c8891ba465329ea23fac0540126f9" + integrity sha512-PlGG4z5mBANDGCKsYQe0CaUYHdZYZt8ZPZLmEt+Urf0W4GlpTX4HescwHU+dc9+Z/G/vZKYZYFrwgm9VxK6QOQ== + dependencies: + charenc "~0.0.1" + crypt "~0.0.1" + is-buffer "~1.1.1" + +micromatch@^4.0.5: + version "4.0.8" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" + integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== + dependencies: + braces "^3.0.3" + picomatch "^2.3.1" + +mimic-fn@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" + integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ== + +minimatch@^3.0.4: + version "3.1.2" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + +minimist@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" + integrity sha512-miQKw5Hv4NS1Psg2517mV4e4dYNaO3++hjAvLOAzKqZ61rH8NS1SK+vbfBWZ5PY/Me/bEWhUwqMghEW5Fb9T7Q== + +minimist@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" + integrity sha512-7Wl+Jz+IGWuSdgsQEJ4JunV0si/iMhg42MnQQG6h1R6TNeVenp4U9x5CC5v/gYqz/fENLQITAWXidNtVL0NNbw== + +minimist@^1.2.5: + version "1.2.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== + +minipass@^7.0.4, minipass@^7.1.2: + version "7.1.2" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" + integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== + +minizlib@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-3.0.2.tgz#f33d638eb279f664439aa38dc5f91607468cb574" + integrity sha512-oG62iEk+CYt5Xj2YqI5Xi9xWUeZhDI8jjQmC5oThVH5JGCTgIjr7ciJDzC7MBzYd//WvR1OTmP5Q38Q8ShQtVA== + dependencies: + minipass "^7.1.2" + +mkdirp@0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" + integrity sha512-SknJC52obPfGQPnjIkXbmA6+5H15E+fR+E4iR2oQ3zzCLbd7/ONua69R/Gw7AgkTLsRG+r5fzksYwWe1AgTyWA== + dependencies: + minimist "0.0.8" + +mkdirp@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-3.0.1.tgz#e44e4c5607fb279c168241713cc6e0fea9adcb50" + integrity sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg== + +multimatch@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-4.0.0.tgz#8c3c0f6e3e8449ada0af3dd29efb491a375191b3" + integrity sha512-lDmx79y1z6i7RNx0ZGCPq1bzJ6ZoDDKbvh7jxr9SJcWLkShMzXrHbYVpTdnhNM5MXpDUxCQ4DgqVttVXlBgiBQ== + dependencies: + "@types/minimatch" "^3.0.3" + array-differ "^3.0.0" + array-union "^2.1.0" + arrify "^2.0.1" + minimatch "^3.0.4" + +mute-stream@0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" + integrity sha512-r65nCZhrbXXb6dXOACihYApHw2Q6pV0M3V0PSxd74N0+D8nzAdEAITq2oAjA1jVnKI+tGvEBUpqiMh0+rW6zDQ== + +nanoid@^3.3.11: + version "3.3.11" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.11.tgz#4f4f112cefbe303202f2199838128936266d185b" + integrity sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w== + +neo-async@^2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" + integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== + +node-addon-api@^7.0.0: + version "7.1.1" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-7.1.1.tgz#1aba6693b0f255258a049d621329329322aad558" + integrity sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ== + +node-fetch@1.6.3: + version "1.6.3" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.6.3.tgz#dc234edd6489982d58e8f0db4f695029abcd8c04" + integrity sha512-BDxbhLHXFFFvilHjh9xihcDyPkXQ+kjblxnl82zAX41xUYSNvuRpFRznmldR9+OKu+p+ULZ7hNoyunlLB5ecUA== + dependencies: + encoding "^0.1.11" + is-stream "^1.0.1" + +node-releases@^2.0.19: + version "2.0.19" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.19.tgz#9e445a52950951ec4d177d843af370b411caf314" + integrity sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw== + +normalize-range@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" + integrity sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA== + +object-assign@^4.0.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== + +onetime@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" + integrity sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ== + dependencies: + mimic-fn "^1.0.0" + +opencollective@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/opencollective/-/opencollective-1.0.3.tgz#aee6372bc28144583690c3ca8daecfc120dd0ef1" + integrity sha512-YBRI0Qa8+Ui0/STV1qYuPrJm889PT3oCPHMVoL+8Y3nwCffj7PSrB2NlGgrhgBKDujxTjxknHWJ/FiqOsYcIDw== + dependencies: + babel-polyfill "6.23.0" + chalk "1.1.3" + inquirer "3.0.6" + minimist "1.2.0" + node-fetch "1.6.3" + opn "4.0.2" + +opn@4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/opn/-/opn-4.0.2.tgz#7abc22e644dff63b0a96d5ab7f2790c0f01abc95" + integrity sha512-iPBWbPP4OEOzR1xfhpGLDh+ypKBOygunZhM9jBtA7FS5sKjEiMZw0EFb82hnDOmTZX90ZWLoZKUza4cVt8MexA== + dependencies: + object-assign "^4.0.1" + pinkie-promise "^2.0.0" + +optionator@^0.8.1: + version "0.8.3" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" + integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== + dependencies: + deep-is "~0.1.3" + fast-levenshtein "~2.0.6" + levn "~0.3.0" + prelude-ls "~1.1.2" + type-check "~0.3.2" + word-wrap "~1.2.3" + +orderedmap@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/orderedmap/-/orderedmap-2.1.1.tgz#61481269c44031c449915497bf5a4ad273c512d2" + integrity sha512-TvAWxi0nDe1j/rtMcWcIj94+Ffe6n7zhow33h40SKxmsmozs6dz/e+EajymfoFcHd7sxNn8yHM8839uixMOV6g== + +os-tmpdir@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== + +picocolors@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" + integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== + +picomatch@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== + +picomatch@^4.0.2, picomatch@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.3.tgz#796c76136d1eead715db1e7bad785dedd695a042" + integrity sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q== + +pinkie-promise@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" + 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" + integrity sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg== + +postcss-scss@^4.0.9: + version "4.0.9" + resolved "https://registry.yarnpkg.com/postcss-scss/-/postcss-scss-4.0.9.tgz#a03c773cd4c9623cb04ce142a52afcec74806685" + integrity sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A== + +postcss-value-parser@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" + integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== + +postcss@^8.4.41, postcss@^8.5.6: + version "8.5.6" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.5.6.tgz#2825006615a619b4f62a9e7426cc120b349a8f3c" + integrity sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg== + dependencies: + nanoid "^3.3.11" + picocolors "^1.1.1" + source-map-js "^1.2.1" + +prelude-ls@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" + integrity sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w== + +promise-polyfill@8.3.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/promise-polyfill/-/promise-polyfill-8.3.0.tgz#9284810268138d103807b11f4e23d5e945a4db63" + integrity sha512-H5oELycFml5yto/atYqmjyigJoAo3+OXwolYiH7OfQuYlAqhxNvTfiNMbV9hsC6Yp83yE5r2KTVmtrG6R9i6Pg== + +prosemirror-commands@^1.6.2: + version "1.7.1" + resolved "https://registry.yarnpkg.com/prosemirror-commands/-/prosemirror-commands-1.7.1.tgz#d101fef85618b1be53d5b99ea17bee5600781b38" + integrity sha512-rT7qZnQtx5c0/y/KlYaGvtG411S97UaL6gdp6RIZ23DLHanMYLyfGBV5DtSnZdthQql7W+lEVbpSfwtO8T+L2w== + dependencies: + prosemirror-model "^1.0.0" + prosemirror-state "^1.0.0" + prosemirror-transform "^1.10.2" + +prosemirror-history@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/prosemirror-history/-/prosemirror-history-1.4.1.tgz#cc370a46fb629e83a33946a0e12612e934ab8b98" + integrity sha512-2JZD8z2JviJrboD9cPuX/Sv/1ChFng+xh2tChQ2X4bB2HeK+rra/bmJ3xGntCcjhOqIzSDG6Id7e8RJ9QPXLEQ== + dependencies: + prosemirror-state "^1.2.2" + prosemirror-transform "^1.0.0" + prosemirror-view "^1.31.0" + rope-sequence "^1.3.0" + +prosemirror-inputrules@^1.4.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/prosemirror-inputrules/-/prosemirror-inputrules-1.5.0.tgz#e22bfaf1d6ea4fe240ad447c184af3d520d43c37" + integrity sha512-K0xJRCmt+uSw7xesnHmcn72yBGTbY45vm8gXI4LZXbx2Z0jwh5aF9xrGQgrVPu0WbyFVFF3E/o9VhJYz6SQWnA== + dependencies: + prosemirror-state "^1.0.0" + prosemirror-transform "^1.0.0" + +prosemirror-keymap@^1.2.2: + version "1.2.3" + resolved "https://registry.yarnpkg.com/prosemirror-keymap/-/prosemirror-keymap-1.2.3.tgz#c0f6ab95f75c0b82c97e44eb6aaf29cbfc150472" + integrity sha512-4HucRlpiLd1IPQQXNqeo81BGtkY8Ai5smHhKW9jjPKRc2wQIxksg7Hl1tTI2IfT2B/LgX6bfYvXxEpJl7aKYKw== + dependencies: + prosemirror-state "^1.0.0" + w3c-keyname "^2.2.0" + +prosemirror-model@^1.0.0, prosemirror-model@^1.20.0, prosemirror-model@^1.21.0, prosemirror-model@^1.24.0, prosemirror-model@^1.25.0: + version "1.25.2" + resolved "https://registry.yarnpkg.com/prosemirror-model/-/prosemirror-model-1.25.2.tgz#39ca862f76f354237efb94441dbc9f79e81cb247" + integrity sha512-BVypCAJ4SL6jOiTsDffP3Wp6wD69lRhI4zg/iT8JXjp3ccZFiq5WyguxvMKmdKFC3prhaig7wSr8dneDToHE1Q== + dependencies: + orderedmap "^2.0.0" + +prosemirror-schema-list@^1.4.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/prosemirror-schema-list/-/prosemirror-schema-list-1.5.1.tgz#5869c8f749e8745c394548bb11820b0feb1e32f5" + integrity sha512-927lFx/uwyQaGwJxLWCZRkjXG0p48KpMj6ueoYiu4JX05GGuGcgzAy62dfiV8eFZftgyBUvLx76RsMe20fJl+Q== + dependencies: + prosemirror-model "^1.0.0" + prosemirror-state "^1.0.0" + prosemirror-transform "^1.7.3" + +prosemirror-state@^1.0.0, prosemirror-state@^1.2.2, prosemirror-state@^1.4.3: + version "1.4.3" + resolved "https://registry.yarnpkg.com/prosemirror-state/-/prosemirror-state-1.4.3.tgz#94aecf3ffd54ec37e87aa7179d13508da181a080" + integrity sha512-goFKORVbvPuAQaXhpbemJFRKJ2aixr+AZMGiquiqKxaucC6hlpHNZHWgz5R7dS4roHiwq9vDctE//CZ++o0W1Q== + dependencies: + prosemirror-model "^1.0.0" + prosemirror-transform "^1.0.0" + prosemirror-view "^1.27.0" + +prosemirror-tables@^1.6.1: + version "1.7.1" + resolved "https://registry.yarnpkg.com/prosemirror-tables/-/prosemirror-tables-1.7.1.tgz#df2507f285c6c7563097b4904cb7c4b9e0cd724b" + integrity sha512-eRQ97Bf+i9Eby99QbyAiyov43iOKgWa7QCGly+lrDt7efZ1v8NWolhXiB43hSDGIXT1UXgbs4KJN3a06FGpr1Q== + dependencies: + prosemirror-keymap "^1.2.2" + prosemirror-model "^1.25.0" + prosemirror-state "^1.4.3" + prosemirror-transform "^1.10.3" + prosemirror-view "^1.39.1" + +prosemirror-transform@^1.0.0, prosemirror-transform@^1.1.0, prosemirror-transform@^1.10.2, prosemirror-transform@^1.10.3, prosemirror-transform@^1.7.3: + version "1.10.4" + resolved "https://registry.yarnpkg.com/prosemirror-transform/-/prosemirror-transform-1.10.4.tgz#56419eac14f9f56612c806ae46f9238648f3f02e" + integrity sha512-pwDy22nAnGqNR1feOQKHxoFkkUtepoFAd3r2hbEDsnf4wp57kKA36hXsB3njA9FtONBEwSDnDeCiJe+ItD+ykw== + dependencies: + prosemirror-model "^1.21.0" + +prosemirror-view@^1.27.0, prosemirror-view@^1.31.0, prosemirror-view@^1.37.0, prosemirror-view@^1.39.1: + version "1.40.1" + resolved "https://registry.yarnpkg.com/prosemirror-view/-/prosemirror-view-1.40.1.tgz#4a12711b45a707b240a1789d45b99df6f13e7c16" + integrity sha512-pbwUjt3G7TlsQQHDiYSupWBhJswpLVB09xXm1YiJPdkjkh9Pe7Y51XdLh5VWIZmROLY8UpUpG03lkdhm9lzIBA== + dependencies: + prosemirror-model "^1.20.0" + prosemirror-state "^1.0.0" + prosemirror-transform "^1.1.0" + +react-dom@^19.0.0: + version "19.1.1" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-19.1.1.tgz#2daa9ff7f3ae384aeb30e76d5ee38c046dc89893" + integrity sha512-Dlq/5LAZgF0Gaz6yiqZCf6VCcZs1ghAJyrsu84Q/GT0gV+mCxbfmKNoGRKBYMJ8IEdGPqu49YWXD02GCknEDkw== + dependencies: + scheduler "^0.26.0" + +react@^19.0.0: + version "19.1.1" + resolved "https://registry.yarnpkg.com/react/-/react-19.1.1.tgz#06d9149ec5e083a67f9a1e39ce97b06a03b644af" + integrity sha512-w8nqGImo45dmMIfljjMwOGtbmC/mk4CMYhWIicdSflH91J9TyCyczcPFXJzrZ/ZXcgGRFeP6BU0BEJTw6tZdfQ== + +readdirp@^4.0.1: + version "4.1.2" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-4.1.2.tgz#eb85801435fbf2a7ee58f19e0921b068fc69948d" + integrity sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg== + +reflect-metadata@0.1.13: + version "0.1.13" + resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.13.tgz#67ae3ca57c972a2aa1642b10fe363fe32d49dc08" + integrity sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg== + +regenerator-runtime@^0.10.0: + version "0.10.5" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz#336c3efc1220adcedda2c9fab67b5a7955a33658" + integrity sha512-02YopEIhAgiBHWeoTiA8aitHDt8z6w+rQqNuIftlM+ZtvSl/brTouaU7DW6GO/cHtvxJvS4Hwv2ibKdxIRi24w== + +regenerator-runtime@^0.11.0: + version "0.11.1" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" + integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== + +regenerator-runtime@^0.13.2: + version "0.13.11" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9" + integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg== + +require-from-string@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== + +restore-cursor@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" + integrity sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q== + dependencies: + onetime "^2.0.0" + signal-exit "^3.0.2" + +rollup-plugin-javascript-obfuscator@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/rollup-plugin-javascript-obfuscator/-/rollup-plugin-javascript-obfuscator-1.0.4.tgz#e767bcb90c2164b18517d8d1cfc5b76ba8b9d6cc" + integrity sha512-pFn5NTqbjWDNMW2WIW9x+GecouGN5Y6fd6oOPLtLwbb0VlBoAiflrbW7WqK1k19ptEIAf5IfAYv0GNIVefhw/A== + dependencies: + javascript-obfuscator "^0.18.1" + +rollup@^4.40.0: + version "4.46.2" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.46.2.tgz#09b1a45d811e26d09bed63dc3ecfb6831c16ce32" + integrity sha512-WMmLFI+Boh6xbop+OAGo9cQ3OgX9MIg7xOQjn+pTCwOkk+FNDAeAemXkJ3HzDJrVXleLOFVa1ipuc1AmEx1Dwg== + dependencies: + "@types/estree" "1.0.8" + optionalDependencies: + "@rollup/rollup-android-arm-eabi" "4.46.2" + "@rollup/rollup-android-arm64" "4.46.2" + "@rollup/rollup-darwin-arm64" "4.46.2" + "@rollup/rollup-darwin-x64" "4.46.2" + "@rollup/rollup-freebsd-arm64" "4.46.2" + "@rollup/rollup-freebsd-x64" "4.46.2" + "@rollup/rollup-linux-arm-gnueabihf" "4.46.2" + "@rollup/rollup-linux-arm-musleabihf" "4.46.2" + "@rollup/rollup-linux-arm64-gnu" "4.46.2" + "@rollup/rollup-linux-arm64-musl" "4.46.2" + "@rollup/rollup-linux-loongarch64-gnu" "4.46.2" + "@rollup/rollup-linux-ppc64-gnu" "4.46.2" + "@rollup/rollup-linux-riscv64-gnu" "4.46.2" + "@rollup/rollup-linux-riscv64-musl" "4.46.2" + "@rollup/rollup-linux-s390x-gnu" "4.46.2" + "@rollup/rollup-linux-x64-gnu" "4.46.2" + "@rollup/rollup-linux-x64-musl" "4.46.2" + "@rollup/rollup-win32-arm64-msvc" "4.46.2" + "@rollup/rollup-win32-ia32-msvc" "4.46.2" + "@rollup/rollup-win32-x64-msvc" "4.46.2" + fsevents "~2.3.2" + +rope-sequence@^1.3.0: + version "1.3.4" + resolved "https://registry.yarnpkg.com/rope-sequence/-/rope-sequence-1.3.4.tgz#df85711aaecd32f1e756f76e43a415171235d425" + integrity sha512-UT5EDe2cu2E/6O4igUr5PSFs23nvvukicWHx6GnOPlHAiiYbzNuCRQCuiUdHJQcqKalLKlrYJnjY0ySGsXNQXQ== + +run-async@^2.2.0: + version "2.4.1" + resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" + integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== + +rx@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/rx/-/rx-4.1.0.tgz#a5f13ff79ef3b740fe30aa803fb09f98805d4782" + integrity sha512-CiaiuN6gapkdl+cZUr67W6I8jquN4lkak3vtIsIWCl4XIPP8ffsoyN6/+PuGXnQy8Cu8W2y9Xxh31Rq4M6wUug== + +"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0": + version "2.1.2" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + +sass@^1.89.2: + version "1.89.2" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.89.2.tgz#a771716aeae774e2b529f72c0ff2dfd46c9de10e" + integrity sha512-xCmtksBKd/jdJ9Bt9p7nPKiuqrlBMBuuGkQlkhZjjQk3Ty48lv93k5Dq6OPkKt4XwxDJ7tvlfrTa1MPA9bf+QA== + dependencies: + chokidar "^4.0.0" + immutable "^5.0.2" + source-map-js ">=0.6.2 <2.0.0" + optionalDependencies: + "@parcel/watcher" "^2.4.1" + +scheduler@^0.26.0: + version "0.26.0" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.26.0.tgz#4ce8a8c2a2095f13ea11bf9a445be50c555d6337" + integrity sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA== + +"schema-utils@^3.0.0 || ^4.0.0": + version "4.3.2" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.3.2.tgz#0c10878bf4a73fd2b1dfd14b9462b26788c806ae" + integrity sha512-Gn/JaSk/Mt9gYubxTtSn/QCV4em9mpAPiR1rqy/Ocu19u/G9J5WWdNoUT4SiV6mFC3y6cxyFcFwdzPM3FgxGAQ== + dependencies: + "@types/json-schema" "^7.0.9" + ajv "^8.9.0" + ajv-formats "^2.1.1" + ajv-keywords "^5.1.0" + +signal-exit@^3.0.2: + version "3.0.7" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== + +sortablejs@^1.15.6: + version "1.15.6" + resolved "https://registry.yarnpkg.com/sortablejs/-/sortablejs-1.15.6.tgz#ff93699493f5b8ab8d828f933227b4988df1d393" + integrity sha512-aNfiuwMEpfBM/CN6LY0ibyhxPfPbyFeBTYJKCvzkJ2GkUpazIt3H+QIPAMHwqQ7tMKaHz1Qj+rJJCqljnf4p3A== + +"source-map-js@>=0.6.2 <2.0.0", source-map-js@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46" + integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== + +source-map-support@0.5.16: + version "0.5.16" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.16.tgz#0ae069e7fe3ba7538c64c98515e35339eac5a042" + integrity sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map@^0.6.0, source-map@^0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== + +source-map@~0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.2.0.tgz#dab73fbcfc2ba819b4de03bd6f6eaa48164b3f9d" + integrity sha512-CBdZ2oa/BHhS4xj5DlhjWNHcan57/5YuvfdLf17iVmIpd9KRm+DFLmC6nBNj+6Ua7Kt3TmOjDpQT1aTYOQtoUA== + dependencies: + amdefine ">=0.0.4" + +string-template@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/string-template/-/string-template-1.0.0.tgz#9e9f2233dc00f218718ec379a28a5673ecca8b96" + integrity sha512-SLqR3GBUXuoPP5MmYtD7ompvXiG87QjT6lzOszyXjTM86Uu7At7vNnt2xgyTLq5o9T4IxTYFyGxcULqpsmsfdg== + +string-width@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== + dependencies: + is-fullwidth-code-point "^2.0.0" + strip-ansi "^4.0.0" + +strip-ansi@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg== + dependencies: + ansi-regex "^2.0.0" + +strip-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" + integrity sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow== + dependencies: + ansi-regex "^3.0.0" + +supports-color@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" + integrity sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g== + +supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +tailwindcss@4.1.11, tailwindcss@^4.1.10: + version "4.1.11" + resolved "https://registry.yarnpkg.com/tailwindcss/-/tailwindcss-4.1.11.tgz#799af3e98c19c5baaefafc6e0c16304a0e684854" + integrity sha512-2E9TBm6MDD/xKYe+dvJZAmg3yxIEDNRc0jwlNyDg/4Fil2QcSLjFKGVff0lAf1jjeaArlG/M75Ey/EYr/OJtBA== + +tapable@^2.2.0: + version "2.2.2" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.2.tgz#ab4984340d30cb9989a490032f086dbb8b56d872" + integrity sha512-Re10+NauLTMCudc7T5WLFLAwDhQ0JWdrMK+9B2M8zR5hRExKmsRDCBA7/aV/pNJFltmBFO5BAMlQFi/vq3nKOg== + +tar@^7.4.3: + version "7.4.3" + resolved "https://registry.yarnpkg.com/tar/-/tar-7.4.3.tgz#88bbe9286a3fcd900e94592cda7a22b192e80571" + integrity sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw== + dependencies: + "@isaacs/fs-minipass" "^4.0.0" + chownr "^3.0.0" + minipass "^7.1.2" + minizlib "^3.0.1" + mkdirp "^3.0.1" + yallist "^5.0.0" + +through@^2.3.6: + version "2.3.8" + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== + +tinyglobby@^0.2.14: + version "0.2.14" + resolved "https://registry.yarnpkg.com/tinyglobby/-/tinyglobby-0.2.14.tgz#5280b0cf3f972b050e74ae88406c0a6a58f4079d" + integrity sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ== + dependencies: + fdir "^6.4.4" + picomatch "^4.0.2" + +tmp@^0.0.33: + version "0.0.33" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" + integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== + dependencies: + os-tmpdir "~1.0.2" + +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" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +tslib@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a" + integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ== + +tslib@^2.4.0, tslib@^2.8.0: + version "2.8.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" + integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== + +type-check@~0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" + integrity sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg== + dependencies: + prelude-ls "~1.1.2" + +uglify-js@^3.1.4: + version "3.19.3" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.19.3.tgz#82315e9bbc6f2b25888858acd1fff8441035b77f" + integrity sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ== + +underscore@1.13.1: + version "1.13.1" + resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.13.1.tgz#0c1c6bd2df54b6b69f2314066d65b6cde6fcf9d1" + integrity sha512-hzSoAVtJF+3ZtiFX0VgfFPHEDRm7Y/QPjGyNo4TVdnDTdft3tr8hEkD25a1jC+TjTuE7tkHGKkhwCgs9dgBB2g== + +underscore@>=1.4.4, underscore@>=1.8.3: + version "1.13.7" + resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.13.7.tgz#970e33963af9a7dda228f17ebe8399e5fbe63a10" + integrity sha512-GMXzWtsc57XAtguZgaQViUOzs0KTkk8ojr3/xAxXLITqf/3EMwxC0inyETfDFjH/Krbhuep0HNbbjI9i/q3F3g== + +update-browserslist-db@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz#348377dd245216f9e7060ff50b15a1b740b75420" + integrity sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw== + dependencies: + escalade "^3.2.0" + picocolors "^1.1.1" + +validator@12.0.0: + version "12.0.0" + resolved "https://registry.yarnpkg.com/validator/-/validator-12.0.0.tgz#fb33221f5320abe2422cda2f517dc3838064e813" + integrity sha512-r5zA1cQBEOgYlesRmSEwc9LkbfNLTtji+vWyaHzRZUxCTHdsX3bd+sdHfs5tGZ2W6ILGGsxWxCNwT/h3IY/3ng== + +vite@^7.0.0: + version "7.0.6" + resolved "https://registry.yarnpkg.com/vite/-/vite-7.0.6.tgz#7866ccb176db4bbeec0adfb3f907f077881591d0" + integrity sha512-MHFiOENNBd+Bd9uvc8GEsIzdkn1JxMmEeYX35tI3fv0sJBUTfW5tQsoaOwuY4KhBI09A3dUJ/DXf2yxPVPUceg== + dependencies: + esbuild "^0.25.0" + fdir "^6.4.6" + picomatch "^4.0.3" + postcss "^8.5.6" + rollup "^4.40.0" + tinyglobby "^0.2.14" + optionalDependencies: + fsevents "~2.3.3" + +w3c-keyname@^2.2.0: + version "2.2.8" + resolved "https://registry.yarnpkg.com/w3c-keyname/-/w3c-keyname-2.2.8.tgz#7b17c8c6883d4e8b86ac8aba79d39e880f8869c5" + integrity sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ== + +word-wrap@~1.2.3: + version "1.2.5" + resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" + integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== + +wordwrap@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" + integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q== + +yallist@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-5.0.0.tgz#00e2de443639ed0d78fd87de0d27469fbcffb533" + integrity sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==