diff --git a/docs/.gitignore b/docs/.gitignore index f0dde6db..812161fb 100644 --- a/docs/.gitignore +++ b/docs/.gitignore @@ -1,3 +1,5 @@ +/tmp/ + # compiled output /dist/ /declarations/ diff --git a/docs/app/app.ts b/docs/app/app.ts index fde5a802..1704a816 100644 --- a/docs/app/app.ts +++ b/docs/app/app.ts @@ -1,9 +1,11 @@ import Application from '@ember/application'; import Resolver from 'ember-resolver'; import loadInitializers from 'ember-load-initializers'; -import config from 'docs/config/environment'; +import config from './config/environment'; import { importSync, isDevelopingApp, macroCondition } from '@embroider/macros'; +import compatModules from '@embroider/virtual/compat-modules'; + if (macroCondition(isDevelopingApp())) { importSync('./deprecation-workflow'); } @@ -11,7 +13,7 @@ if (macroCondition(isDevelopingApp())) { export default class App extends Application { modulePrefix = config.modulePrefix; podModulePrefix = config.podModulePrefix; - Resolver = Resolver; + Resolver = Resolver.withModules(compatModules); } -loadInitializers(App, config.modulePrefix); +loadInitializers(App, config.modulePrefix, compatModules); diff --git a/docs/app/components/code-block.gts b/docs/app/components/code-block.gts index 351001b5..2226ab5c 100644 --- a/docs/app/components/code-block.gts +++ b/docs/app/components/code-block.gts @@ -4,7 +4,7 @@ import CodeInline from './code-inline'; interface CodeBlockSignature { Element: HTMLElement; Args: { - code: string; + fileName: string; language?: string; }; } @@ -17,7 +17,11 @@ export default class CodeBlock extends Component { diff --git a/docs/app/components/code-example.gts b/docs/app/components/code-example.gts index d3a539c0..79a4761f 100644 --- a/docs/app/components/code-example.gts +++ b/docs/app/components/code-example.gts @@ -5,8 +5,6 @@ import { on } from '@ember/modifier'; import { fn } from '@ember/helper'; import { eq, and } from 'ember-truth-helpers'; import CodeBlock from './code-block'; -// @ts-expect-error Could not find a declaration file for module 'ember-code-snippet'. -import { getCodeSnippet } from 'ember-code-snippet'; interface CodeExampleSignature { Element: HTMLElement; @@ -99,35 +97,33 @@ export default class CodeExample extends Component { >Result {{/if}} - {{#if (and @glimmerTs (eq this.activeTab "glimmer-ts"))}} - {{#let (getCodeSnippet @glimmerTs) as |snippet|}} - - {{/let}} + {{#if @glimmerTs}} + {{#if (eq this.activeTab "glimmer-ts")}} + + {{/if}} {{/if}} - {{#if (and @hbs (eq this.activeTab "hbs"))}} - {{#let (getCodeSnippet @hbs) as |snippet|}} - - {{/let}} + {{#if @hbs}} + {{#if (eq this.activeTab "hbs")}} + + {{/if}} {{/if}} {{#if @hbs2}} - {{#let (getCodeSnippet @hbs2) as |snippet|}} - - {{/let}} + {{/if}} - {{#if (and @js (eq this.activeTab "js"))}} - {{#let (getCodeSnippet @js) as |snippet|}} - - {{/let}} + {{#if @js}} + {{#if (eq this.activeTab "js")}} + + {{/if}} {{/if}} - {{#if (and @scss (eq this.activeTab "scss"))}} - {{#let (getCodeSnippet @scss) as |snippet|}} - - {{/let}} + {{#if @scss}} + {{#if (eq this.activeTab "scss")}} + + {{/if}} {{/if}} - {{#if (and @css (eq this.activeTab "css"))}} - {{#let (getCodeSnippet @css) as |snippet|}} - - {{/let}} + {{#if @css}} + {{#if (eq this.activeTab "css")}} + + {{/if}} {{/if}} {{#if (and this.showResult (has-block))}}
Promise>; + +async function loadSnippet(name: string) { + const path = `./snippets/${name}` as const; + const loader = files[path]; + if (!loader) throw new Error(`File not found: ${path}`); + return await loader(); +} + interface CodeInlineSignature { Element: HTMLElement; Args: { - code: string; + fileName: string; language?: string; }; } @@ -17,17 +28,6 @@ interface CodeInlineSignature { export default class CodeInline extends Component { @tracked prismCode: string | SafeString = ''; - get code() { - const code = this.args.code; - - assert( - "ember-prism's and components require a `code` parameter to be passed in.", - code !== undefined, - ); - - return code; - } - get language() { return this.args.language ?? 'markup'; } @@ -37,9 +37,10 @@ export default class CodeInline extends Component { }); generateCode = task(async () => { - const code = this.code; const language = this.language; + const code = await loadSnippet(this.args.fileName); + const htmlCode = await codeToHtml(code, { lang: language, theme: 'github-light-default', diff --git a/docs/app/config/environment.d.ts b/docs/app/config/environment.d.ts deleted file mode 100644 index a58802a8..00000000 --- a/docs/app/config/environment.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -/** - * Type declarations for - * import config from 'docs/config/environment' - */ -declare const config: { - environment: string; - modulePrefix: string; - podModulePrefix: string; - locationType: 'history' | 'hash' | 'none'; - rootURL: string; - APP: Record; -}; - -export default config; diff --git a/docs/app/config/environment.ts b/docs/app/config/environment.ts new file mode 100644 index 00000000..ca8d66bb --- /dev/null +++ b/docs/app/config/environment.ts @@ -0,0 +1,33 @@ +import loadConfigFromMeta from '@embroider/config-meta-loader'; +import { assert } from '@ember/debug'; + +const config = loadConfigFromMeta('docs') as unknown; + +assert( + 'config is not an object', + typeof config === 'object' && config !== null, +); +assert( + 'modulePrefix was not detected on your config', + 'modulePrefix' in config && typeof config.modulePrefix === 'string', +); +assert( + 'locationType was not detected on your config', + 'locationType' in config && typeof config.locationType === 'string', +); +assert( + 'rootURL was not detected on your config', + 'rootURL' in config && typeof config.rootURL === 'string', +); +assert( + 'APP was not detected on your config', + 'APP' in config && typeof config.APP === 'object', +); + +export default config as { + modulePrefix: string; + podModulePrefix?: string; + locationType: string; + rootURL: string; + APP: Record; +} & Record; diff --git a/docs/babel.config.cjs b/docs/babel.config.cjs new file mode 100644 index 00000000..95729872 --- /dev/null +++ b/docs/babel.config.cjs @@ -0,0 +1,50 @@ +const { + babelCompatSupport, + templateCompatSupport, +} = require('@embroider/compat/babel'); + +module.exports = { + plugins: [ + [ + '@babel/plugin-transform-typescript', + { + allExtensions: true, + onlyRemoveTypeImports: true, + allowDeclareFields: true, + }, + ], + [ + 'babel-plugin-ember-template-compilation', + { + compilerPath: 'ember-source/dist/ember-template-compiler.js', + enableLegacyModules: [ + 'ember-cli-htmlbars', + 'ember-cli-htmlbars-inline-precompile', + 'htmlbars-inline-precompile', + ], + transforms: [...templateCompatSupport()], + }, + ], + [ + 'module:decorator-transforms', + { + runtime: { + import: require.resolve('decorator-transforms/runtime-esm'), + }, + }, + ], + [ + '@babel/plugin-transform-runtime', + { + absoluteRuntime: __dirname, + useESModules: true, + regenerator: false, + }, + ], + ...babelCompatSupport(), + ], + + generatorOpts: { + compact: false, + }, +}; diff --git a/docs/ember-cli-build.js b/docs/ember-cli-build.js index 14ce9f9a..3d47a17d 100644 --- a/docs/ember-cli-build.js +++ b/docs/ember-cli-build.js @@ -1,11 +1,13 @@ 'use strict'; - const EmberApp = require('ember-cli/lib/broccoli/ember-app'); -module.exports = function (defaults) { +const { compatBuild } = require('@embroider/compat'); + +module.exports = async function (defaults) { + const { buildOnce } = await import('@embroider/vite'); + const app = new EmberApp(defaults, { 'ember-cli-babel': { enableTypeScriptTransform: true }, - snippetPaths: ['app/components/snippets'], autoImport: { watchDependencies: ['ember-basic-dropdown'], }, @@ -16,6 +18,5 @@ module.exports = function (defaults) { }, }); - const { maybeEmbroider } = require('@embroider/test-setup'); - return maybeEmbroider(app); + return compatBuild(app, buildOnce); }; diff --git a/docs/eslint.config.mjs b/docs/eslint.config.mjs index 19ae44b2..7864d0b8 100644 --- a/docs/eslint.config.mjs +++ b/docs/eslint.config.mjs @@ -30,15 +30,6 @@ const parserOptions = { js: { ecmaFeatures: { modules: true }, ecmaVersion: 'latest', - requireConfigFile: false, - babelOptions: { - plugins: [ - [ - '@babel/plugin-proposal-decorators', - { decoratorsBeforeExport: true }, - ], - ], - }, }, ts: { projectService: true, diff --git a/docs/app/index.html b/docs/index.html similarity index 79% rename from docs/app/index.html rename to docs/index.html index 5d04c2a0..4448204d 100644 --- a/docs/app/index.html +++ b/docs/index.html @@ -8,8 +8,8 @@ {{content-for "head"}} - - + + - + + {{content-for "body-footer"}} diff --git a/docs/package.json b/docs/package.json index 13dc5add..f9d38873 100644 --- a/docs/package.json +++ b/docs/package.json @@ -11,7 +11,7 @@ "test": "tests" }, "scripts": { - "build": "ember build --environment=production", + "build": "vite build", "format": "prettier . --cache --write", "lint": "concurrently \"npm:lint:*(!fix)\" --names \"lint:\" --prefixColors auto", "lint:css": "stylelint \"**/*.css\" --allow-empty-input", @@ -23,9 +23,9 @@ "lint:js": "eslint . --cache", "lint:js:fix": "eslint . --fix", "lint:types": "glint", - "start": "ember serve", + "start": "vite", "test": "concurrently \"npm:lint\" \"npm:test:*\" --names \"lint,test:\" --prefixColors auto", - "test:ember": "ember test" + "test:ember": "vite build --mode development && ember test --path dist" }, "dependenciesMeta": { "ember-basic-dropdown": { @@ -36,11 +36,16 @@ "@babel/core": "^7.28.5", "@babel/eslint-parser": "^7.28.5", "@babel/plugin-proposal-decorators": "^7.28.0", + "@babel/plugin-transform-runtime": "^7.28.5", + "@babel/plugin-transform-typescript": "^7.28.5", "@ember/optional-features": "^2.2.0", "@ember/string": "^4.0.1", "@ember/test-helpers": "^5.4.1", + "@embroider/compat": "^4.1.10", + "@embroider/config-meta-loader": "^1.0.0", + "@embroider/core": "^4.2.7", "@embroider/macros": "^1.19.4", - "@embroider/test-setup": "^4.0.0", + "@embroider/vite": "^1.4.1", "@eslint/js": "^9.39.1", "@glimmer/component": "^2.0.0", "@glimmer/tracking": "^1.1.2", @@ -48,24 +53,18 @@ "@glint/environment-ember-loose": "^1.5.2", "@glint/environment-ember-template-imports": "^1.5.2", "@glint/template": "1.5.2", + "@rollup/plugin-babel": "^6.1.0", "@tsconfig/ember": "^3.0.12", "@types/qunit": "^2.19.13", "@types/rsvp": "^4.0.9", - "broccoli-asset-rev": "^3.0.0", + "babel-plugin-ember-template-compilation": "^2.3.0", "concurrently": "^9.2.1", + "decorator-transforms": "^2.3.0", "ember-auto-import": "^2.11.2", "ember-cli": "~6.7.0", - "ember-cli-app-version": "^7.0.0", "ember-cli-babel": "^8.2.0", - "ember-cli-clean-css": "^3.0.0", - "ember-cli-dependency-checker": "^3.3.3", "ember-cli-deprecation-workflow": "^3.4.0", "ember-cli-htmlbars": "^6.3.0", - "ember-cli-inject-live-reload": "^2.1.0", - "ember-cli-sass": "^11.0.1", - "ember-cli-sri": "^2.1.1", - "ember-cli-terser": "^4.0.2", - "ember-code-snippet": "git://github.com/ef4/ember-code-snippet.git#d054b697098ad52481c94a952ccf8d89ba1f25fe", "ember-concurrency": "^5.1.0", "ember-load-initializers": "^3.0.1", "ember-modifier": "^4.2.2", @@ -74,7 +73,6 @@ "ember-resolver": "^13.1.1", "ember-source": "~6.7.0", "ember-source-channel-url": "^3.0.0", - "ember-template-imports": "^4.3.0", "ember-template-lint": "^7.9.3", "ember-truth-helpers": "^5.0.0", "eslint": "^9.39.1", @@ -83,20 +81,19 @@ "eslint-plugin-n": "^17.23.1", "eslint-plugin-qunit": "^8.2.5", "globals": "^16.5.0", - "loader.js": "^4.7.0", "prettier": "^3.6.2", "prettier-plugin-ember-template-tag": "^2.1.0", "qunit": "^2.24.2", "qunit-dom": "^3.5.0", "rsvp": "^4.8.5", - "sass": "^1.94.0", + "sass-embedded": "^1.93.3", "shiki": "^3.15.0", "stylelint": "^16.25.0", "stylelint-config-standard": "^39.0.1", "tracked-built-ins": "^4.0.0", "typescript": "^5.9.3", "typescript-eslint": "^8.46.4", - "webpack": "^5.102.1" + "vite": "^7.2.2" }, "engines": { "node": ">= 20.11" @@ -106,5 +103,13 @@ }, "dependencies": { "ember-basic-dropdown": "workspace:*" + }, + "ember-addon": { + "type": "app", + "version": 2 + }, + "exports": { + "./tests/*": "./tests/*", + "./*": "./app/*" } } diff --git a/docs/testem.js b/docs/testem.js index ed2f3712..b4b6691f 100644 --- a/docs/testem.js +++ b/docs/testem.js @@ -1,23 +1,25 @@ 'use strict'; -module.exports = { - test_page: 'tests/index.html?hidepassed', - disable_watching: true, - launch_in_ci: ['Chrome'], - launch_in_dev: ['Chrome'], - browser_start_timeout: 120, - browser_args: { - Chrome: { - ci: [ - // --no-sandbox is needed when running Chrome inside a container - process.env.CI ? '--no-sandbox' : null, - '--headless', - '--disable-dev-shm-usage', - '--disable-software-rasterizer', - '--mute-audio', - '--remote-debugging-port=0', - '--window-size=1440,900', - ].filter(Boolean), +if (typeof module !== 'undefined') { + module.exports = { + test_page: 'tests/index.html?hidepassed', + disable_watching: true, + launch_in_ci: ['Chrome'], + launch_in_dev: ['Chrome'], + browser_start_timeout: 120, + browser_args: { + Chrome: { + ci: [ + // --no-sandbox is needed when running Chrome inside a container + process.env.CI ? '--no-sandbox' : null, + '--headless', + '--disable-dev-shm-usage', + '--disable-software-rasterizer', + '--mute-audio', + '--remote-debugging-port=0', + '--window-size=1440,900', + ].filter(Boolean), + }, }, - }, -}; + }; +} diff --git a/docs/tests/index.html b/docs/tests/index.html index a5c5bfd9..72b61ce8 100644 --- a/docs/tests/index.html +++ b/docs/tests/index.html @@ -9,9 +9,9 @@ {{content-for "head"}} {{content-for "test-head"}} - - - + + + {{content-for "head-footer"}} {{content-for "test-head-footer"}} @@ -28,12 +28,17 @@
- - - - + + + + + {{content-for "body-footer"}} - {{content-for "test-body-footer"}} + diff --git a/docs/tests/test-helper.ts b/docs/tests/test-helper.ts index bd22ed03..24ffceff 100644 --- a/docs/tests/test-helper.ts +++ b/docs/tests/test-helper.ts @@ -3,12 +3,12 @@ import config from 'docs/config/environment'; import * as QUnit from 'qunit'; import { setApplication } from '@ember/test-helpers'; import { setup } from 'qunit-dom'; -import { loadTests } from 'ember-qunit/test-loader'; -import { start, setupEmberOnerrorValidation } from 'ember-qunit'; +import { start as qunitStart, setupEmberOnerrorValidation } from 'ember-qunit'; -setApplication(Application.create(config.APP)); +export function start() { + setApplication(Application.create(config.APP)); -setup(QUnit.assert); -setupEmberOnerrorValidation(); -loadTests(); -start(); + setup(QUnit.assert); + setupEmberOnerrorValidation(); + qunitStart(); +} diff --git a/docs/tsconfig.json b/docs/tsconfig.json index a15a5200..85763872 100644 --- a/docs/tsconfig.json +++ b/docs/tsconfig.json @@ -13,6 +13,6 @@ "docs/*": ["app/*"], "*": ["types/*"] }, - "types": ["ember-source/types"] + "types": ["ember-source/types", "@embroider/core/virtual", "vite/client"] } } diff --git a/docs/vite.config.mjs b/docs/vite.config.mjs new file mode 100644 index 00000000..219253db --- /dev/null +++ b/docs/vite.config.mjs @@ -0,0 +1,15 @@ +import { defineConfig } from 'vite'; +import { extensions, classicEmberSupport, ember } from '@embroider/vite'; +import { babel } from '@rollup/plugin-babel'; + +export default defineConfig({ + plugins: [ + classicEmberSupport(), + ember(), + // extra plugins here + babel({ + babelHelpers: 'runtime', + extensions, + }), + ], +}); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0e1bd451..d2e7a2c6 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -51,6 +51,12 @@ importers: '@babel/plugin-proposal-decorators': specifier: ^7.28.0 version: 7.28.0(@babel/core@7.28.5) + '@babel/plugin-transform-runtime': + specifier: ^7.28.5 + version: 7.28.5(@babel/core@7.28.5) + '@babel/plugin-transform-typescript': + specifier: ^7.28.5 + version: 7.28.5(@babel/core@7.28.5) '@ember/optional-features': specifier: ^2.2.0 version: 2.2.0 @@ -60,12 +66,21 @@ importers: '@ember/test-helpers': specifier: ^5.4.1 version: 5.4.1(@babel/core@7.28.5)(@glint/template@1.5.2) + '@embroider/compat': + specifier: ^4.1.10 + version: 4.1.10(@embroider/core@4.2.7(@glint/template@1.5.2))(@glint/template@1.5.2) + '@embroider/config-meta-loader': + specifier: ^1.0.0 + version: 1.0.0 + '@embroider/core': + specifier: ^4.2.7 + version: 4.2.7(@glint/template@1.5.2) '@embroider/macros': specifier: ^1.19.4 version: 1.19.4(@glint/template@1.5.2) - '@embroider/test-setup': - specifier: ^4.0.0 - version: 4.0.0(@embroider/core@3.5.7(@glint/template@1.5.2)) + '@embroider/vite': + specifier: ^1.4.1 + version: 1.4.1(@embroider/core@4.2.7(@glint/template@1.5.2))(@glint/template@1.5.2)(rollup@4.53.2)(vite@7.2.2(@types/node@24.10.1)(jiti@2.6.1)(sass-embedded@1.93.3)(sass@1.94.0)(terser@5.44.1)(yaml@2.8.1)) '@eslint/js': specifier: ^9.39.1 version: 9.39.1 @@ -87,6 +102,9 @@ importers: '@glint/template': specifier: 1.5.2 version: 1.5.2 + '@rollup/plugin-babel': + specifier: ^6.1.0 + version: 6.1.0(@babel/core@7.28.5)(rollup@4.53.2) '@tsconfig/ember': specifier: ^3.0.12 version: 3.0.12 @@ -96,51 +114,30 @@ importers: '@types/rsvp': specifier: ^4.0.9 version: 4.0.9 - broccoli-asset-rev: - specifier: ^3.0.0 - version: 3.0.0 + babel-plugin-ember-template-compilation: + specifier: ^2.3.0 + version: 2.4.1 concurrently: specifier: ^9.2.1 version: 9.2.1 + decorator-transforms: + specifier: ^2.3.0 + version: 2.3.0(@babel/core@7.28.5) ember-auto-import: specifier: ^2.11.2 version: 2.11.2(@glint/template@1.5.2)(webpack@5.102.1) ember-cli: specifier: ~6.7.0 version: 6.7.2(@types/node@24.10.1)(handlebars@4.7.8)(underscore@1.13.7) - ember-cli-app-version: - specifier: ^7.0.0 - version: 7.0.0(ember-source@6.7.0(@glimmer/component@2.0.0)(rsvp@4.8.5)) ember-cli-babel: specifier: ^8.2.0 version: 8.2.0(@babel/core@7.28.5) - ember-cli-clean-css: - specifier: ^3.0.0 - version: 3.0.0 - ember-cli-dependency-checker: - specifier: ^3.3.3 - version: 3.3.3(ember-cli@6.7.2(@types/node@24.10.1)(handlebars@4.7.8)(underscore@1.13.7)) ember-cli-deprecation-workflow: specifier: ^3.4.0 version: 3.4.0(ember-source@6.7.0(@glimmer/component@2.0.0)(rsvp@4.8.5)) ember-cli-htmlbars: specifier: ^6.3.0 version: 6.3.0 - ember-cli-inject-live-reload: - specifier: ^2.1.0 - version: 2.1.0 - ember-cli-sass: - specifier: ^11.0.1 - version: 11.0.1 - ember-cli-sri: - specifier: ^2.1.1 - version: 2.1.1 - ember-cli-terser: - specifier: ^4.0.2 - version: 4.0.2 - ember-code-snippet: - specifier: git://github.com/ef4/ember-code-snippet.git#d054b697098ad52481c94a952ccf8d89ba1f25fe - version: https://codeload.github.com/ef4/ember-code-snippet/tar.gz/d054b697098ad52481c94a952ccf8d89ba1f25fe ember-concurrency: specifier: ^5.1.0 version: 5.1.0(@babel/core@7.28.5)(@glint/template@1.5.2) @@ -165,9 +162,6 @@ importers: ember-source-channel-url: specifier: ^3.0.0 version: 3.0.0(encoding@0.1.13) - ember-template-imports: - specifier: ^4.3.0 - version: 4.3.0 ember-template-lint: specifier: ^7.9.3 version: 7.9.3 @@ -192,9 +186,6 @@ importers: globals: specifier: ^16.5.0 version: 16.5.0 - loader.js: - specifier: ^4.7.0 - version: 4.7.0 prettier: specifier: ^3.6.2 version: 3.6.2 @@ -210,9 +201,9 @@ importers: rsvp: specifier: ^4.8.5 version: 4.8.5 - sass: - specifier: ^1.94.0 - version: 1.94.0 + sass-embedded: + specifier: ^1.93.3 + version: 1.93.3 shiki: specifier: ^3.15.0 version: 3.15.0 @@ -231,9 +222,9 @@ importers: typescript-eslint: specifier: ^8.46.4 version: 8.46.4(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) - webpack: - specifier: ^5.102.1 - version: 5.102.1 + vite: + specifier: ^7.2.2 + version: 7.2.2(@types/node@24.10.1)(jiti@2.6.1)(sass-embedded@1.93.3)(sass@1.94.0)(terser@5.44.1)(yaml@2.8.1) ember-basic-dropdown: dependencies: @@ -749,6 +740,11 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-dynamic-import@7.8.3': + resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-import-assertions@7.27.1': resolution: {integrity: sha512-UT/Jrhw57xg4ILHLFnzFpPDlMbcdEicaAtjPQpbj9wa8T4r5KVWCimHcL/460g8Ht0DMxDyjsLgiWSkVjnwPFg==} engines: {node: '>=6.9.0'} @@ -1131,14 +1127,16 @@ packages: resolution: {integrity: sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==} engines: {node: '>=6.9.0'} - '@cacheable/memoize@2.0.3': - resolution: {integrity: sha512-hl9wfQgpiydhQEIv7fkjEzTGE+tcosCXLKFDO707wYJ/78FVOlowb36djex5GdbSyeHnG62pomYLMuV/OT8Pbw==} + '@bufbuild/protobuf@2.10.1': + resolution: {integrity: sha512-ckS3+vyJb5qGpEYv/s1OebUHDi/xSNtfgw1wqKZo7MR9F2z+qXr0q5XagafAG/9O0QPVIUfST0smluYSTpYFkg==} - '@cacheable/memory@2.0.4': - resolution: {integrity: sha512-cCmJKCKlT1t7hNBI1+gFCwmKFd9I4pS3zqBeNGXTSODnpa0EeDmORHY8oEMTuozfdg3cgsVh8ojLaPYb6eC7Cg==} + '@cacheable/memory@2.0.5': + resolution: {integrity: sha512-fkiAxCvssEyJZ5fxX4tcdZFRmW9JehSTGvvqmXn6rTzG5cH6V/3C4ad8yb01vOjp2xBydHkHrgpW0qeGtzt6VQ==} - '@cacheable/utils@2.2.0': - resolution: {integrity: sha512-7xaQayO3msdVcxXLYcLU5wDqJBNdQcPPPHr6mdTEIQI7N7TbtSVVTpWOTfjyhg0L6AQwQdq7miKdWtTDBoBldQ==} + '@cacheable/utils@2.3.0': + resolution: {integrity: sha512-qznqu6bpEei96zojGW+/IX1VXTOihznnVOK/kzyQWcqgn7SqkC3216nsX7M4BQfGwQgnxUXZ1xX7xiUoedqLPA==} + peerDependencies: + keyv: ^5.5.4 '@cnakazawa/watch@1.0.4': resolution: {integrity: sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==} @@ -1241,10 +1239,24 @@ packages: resolution: {integrity: sha512-EfI9cJ5/3QSUJtwm7x1MXrx3TEa2p7RNgSHefy7fvGm8/DP1xUFL25nST1NaHbHcqR1UhMlrTtv5iUIDoVzeQQ==} engines: {node: 12.* || 14.* || >= 16} + '@embroider/compat@4.1.10': + resolution: {integrity: sha512-GtANRyjHuU8FQoBukPBqATWHb8Ck92FLqWc8uWGNyVHX86aInvXJyh947/rpVGi0vzrFJv5u3AEsp5a6/JPg1g==} + engines: {node: 12.* || 14.* || >= 16} + peerDependencies: + '@embroider/core': ^4.2.7 + + '@embroider/config-meta-loader@1.0.0': + resolution: {integrity: sha512-qznkdjgEGPe6NM94hZNXvOm/WhrJwBh8FtSQZ+nGjh9TOjY42tOiTEevFuM0onNXUn6bpdGzmjwKo2xY2jxQxQ==} + engines: {node: 12.* || 14.* || >= 16} + '@embroider/core@3.5.7': resolution: {integrity: sha512-0oytko2+iaYS31TG9Axj7Py0e0FAccUhu9J1h7ldEnQegK+Eu5+OINU0dYQgt0ijp6f2yF4+o3J7u9CJCLZ1gw==} engines: {node: 12.* || 14.* || >= 16} + '@embroider/core@4.2.7': + resolution: {integrity: sha512-ZHAyMGzNbIt2XthY6KUIQT15YiBYrZgWqCgOpioRPQS+HpMPkKETHkDWjftOJh9RpQL7hfLMvucnvxeCVXXPbw==} + engines: {node: 12.* || 14.* || >= 16} + '@embroider/macros@1.16.13': resolution: {integrity: sha512-2oGZh0m1byBYQFWEa8b2cvHJB2LzaF3DdMCLCqcRAccABMROt1G3sultnNCT30NhfdGWMEsJOT3Jm4nFxXmTRw==} engines: {node: 12.* || 14.* || >= 16} @@ -1263,6 +1275,9 @@ packages: '@glint/template': optional: true + '@embroider/reverse-exports@0.1.2': + resolution: {integrity: sha512-TgjQalfB42RnwdRVApjcvHSVjBe+7MJfCZV0Cs1jv2QgnFGr/6f5X19PKvmF4FU4xbBf7yOsIWrVvYvidWnXlw==} + '@embroider/shared-internals@2.9.0': resolution: {integrity: sha512-8untWEvGy6av/oYibqZWMz/yB+LHsKxEOoUZiLvcpFwWj2Sipc0DcXeTJQZQZ++otNkLCWyDrDhOLrOkgjOPSg==} engines: {node: 12.* || 14.* || >= 16} @@ -1303,6 +1318,168 @@ packages: '@glint/template': optional: true + '@embroider/vite@1.4.1': + resolution: {integrity: sha512-3z392+ubPuxsp+/PoHosdI8Mx8EeOsKfXTiGOPpDqFPfCTUQp7Fa6FmKqm3b7iQoIVsb2VZb1lOZrsqdJoA1Zw==} + peerDependencies: + '@embroider/core': ^4.2.7 + vite: '>= 5.2.0' + + '@esbuild/aix-ppc64@0.25.12': + resolution: {integrity: sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + + '@esbuild/android-arm64@0.25.12': + resolution: {integrity: sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm@0.25.12': + resolution: {integrity: sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + + '@esbuild/android-x64@0.25.12': + resolution: {integrity: sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + + '@esbuild/darwin-arm64@0.25.12': + resolution: {integrity: sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-x64@0.25.12': + resolution: {integrity: sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + + '@esbuild/freebsd-arm64@0.25.12': + resolution: {integrity: sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.25.12': + resolution: {integrity: sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + + '@esbuild/linux-arm64@0.25.12': + resolution: {integrity: sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm@0.25.12': + resolution: {integrity: sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-ia32@0.25.12': + resolution: {integrity: sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-loong64@0.25.12': + resolution: {integrity: sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-mips64el@0.25.12': + resolution: {integrity: sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-ppc64@0.25.12': + resolution: {integrity: sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + + '@esbuild/linux-riscv64@0.25.12': + resolution: {integrity: sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-s390x@0.25.12': + resolution: {integrity: sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-x64@0.25.12': + resolution: {integrity: sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + + '@esbuild/netbsd-arm64@0.25.12': + resolution: {integrity: sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + + '@esbuild/netbsd-x64@0.25.12': + resolution: {integrity: sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + + '@esbuild/openbsd-arm64@0.25.12': + resolution: {integrity: sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + + '@esbuild/openbsd-x64@0.25.12': + resolution: {integrity: sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + + '@esbuild/openharmony-arm64@0.25.12': + resolution: {integrity: sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openharmony] + + '@esbuild/sunos-x64@0.25.12': + resolution: {integrity: sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + + '@esbuild/win32-arm64@0.25.12': + resolution: {integrity: sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-ia32@0.25.12': + resolution: {integrity: sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-x64@0.25.12': + resolution: {integrity: sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + '@eslint-community/eslint-utils@4.9.0': resolution: {integrity: sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -2101,6 +2278,9 @@ packages: '@tsconfig/ember@3.0.12': resolution: {integrity: sha512-ypFTXqIzQAB5HpYPi4TwDElDcUheWrKsEaYXgjiCAvsH6zxcQ4zUeuJqmfT+FoUlHTPZ3Xyel81OxrcjI+rilw==} + '@types/babel__code-frame@7.0.6': + resolution: {integrity: sha512-Anitqkl3+KrzcW2k77lRlg/GfLZLWXBuNgbEcIOU6M92yw42vsd3xV/Z/yAHEj8m+KUjL6bWOVOFqX8PFPJ4LA==} + '@types/body-parser@1.19.6': resolution: {integrity: sha512-HLFeCYgz89uk22N5Qg3dvGvsv46B8GLvKKo1zKG4NybA8U2DiEO3w9lqGg29t/tfLRJpJ6iQxnVw4OnB7MoM9g==} @@ -2667,6 +2847,10 @@ packages: resolution: {integrity: sha512-n+ktQ3JeyWrpRutSyPn2PsHeH+A94SVm+iUoogzf9VUqpP47FfWem24gpQXhn+p6+x5/BpuFJXMLXWt7ZoYAKA==} engines: {node: '>= 12.*'} + babel-plugin-ember-template-compilation@3.0.1: + resolution: {integrity: sha512-3fUgnv+azabsl2PMd+SpkV8E7vvp7oRLaXv+OJIe36G3niSVYDKJ+7n6WaPyh+z7gqeAKSBj7Bdc5dYbhEMsgQ==} + engines: {node: '>= 18.*'} + babel-plugin-htmlbars-inline-precompile@5.3.1: resolution: {integrity: sha512-QWjjFgSKtSRIcsBhJmEwS2laIdrA6na8HAlc/pEAhjHgQsah/gMiBFRZvbQTy//hWxR4BMwV7/Mya7q5H8uHeA==} engines: {node: 10.* || >= 12.*} @@ -2699,6 +2883,10 @@ packages: babel-remove-types@1.0.2: resolution: {integrity: sha512-X2lmGht7sGkDgpBIaTmr8b/0aXKkMeHeJ5W0HgOdMp1KHyE3PHySHYfbYrfkVoISQsHppNv9yA+pDwhWqaxBSA==} + babylon@6.18.0: + resolution: {integrity: sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==} + hasBin: true + backbone@1.6.1: resolution: {integrity: sha512-YQzWxOrIgL6BoFnZjThVN99smKYhyEXXFyJJ2lsF1wJLyo4t+QjmkLrH8/fN22FZ4ykF70Xq7PgTugJVR4zS9Q==} @@ -2748,6 +2936,9 @@ packages: resolution: {integrity: sha512-nAihlQsYGyc5Bwq6+EsubvANYGExeJKHDO3RjnvwU042fawQTQfM3Kxn7IHUXQOz4bzfwsGYYHGSvXyW4zOGLg==} engines: {node: '>=0.8'} + bind-decorator@1.0.11: + resolution: {integrity: sha512-yzkH0uog6Vv/vQ9+rhSKxecnqGUZHYncg7qS7voz3Q76+TAi1SGiOKk2mlOvusQnFz9Dc4BC/NMkeXu11YgjJg==} + bl@4.1.0: resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} @@ -2826,9 +3017,6 @@ packages: broccoli-filter@1.3.0: resolution: {integrity: sha512-VXJXw7eBfG82CFxaBDjYmyN7V72D4In2zwLVQJd/h3mBfF3CMdRTsv2L20lmRTtCv1sAHcB+LgMso90e/KYiLw==} - broccoli-flatiron@0.1.3: - resolution: {integrity: sha512-dD/4ck+LKOLTBzFlxP2zX7fhWt1TFMVR/88b9/wd8LkAHUyAzWs1vBah94ObSvajYGZ7ic+XvMXw+OhmvdlYoQ==} - broccoli-funnel-reducer@1.0.0: resolution: {integrity: sha512-SaOCEdh+wnt2jFUV2Qb32m7LXyElvFwW3NKNaEJyi5PGQNwxfqpkc0KI6AbQANKgdj/40U2UC0WuGThFwuEUaA==} @@ -2846,9 +3034,6 @@ packages: broccoli-kitchen-sink-helpers@0.3.1: resolution: {integrity: sha512-gqYnKSJxBSjj/uJqeuRAzYVbmjWhG0mOZ8jrp6+fnUIOgLN6MvI7XxBECDHkYMIFPJ8Smf4xaI066Q2FqQDnXg==} - broccoli-merge-trees@1.2.4: - resolution: {integrity: sha512-RXJAleytlED0dxXGEo2EXwrg5cCesY8LQzzGRogwGQmluoz+ijzxajpyWAW6wu/AyuQZj1vgnIqnld8jvuuXtQ==} - broccoli-merge-trees@2.0.1: resolution: {integrity: sha512-WjaexJ+I8BxP5V5RNn6um/qDRSmKoiBC/QkRi79FT9ClHfldxRyCDs9mcV7mmoaPlsshmmPaUz5jdtcKA6DClQ==} @@ -2937,6 +3122,13 @@ packages: browser-process-hrtime@1.0.0: resolution: {integrity: sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==} + browserslist-to-esbuild@2.1.1: + resolution: {integrity: sha512-KN+mty6C3e9AN8Z5dI1xeN15ExcRNeISoC3g7V0Kax/MMF9MSoYA2G7lkTTcVUFntiEjkpI0HNgqJC1NjdyNUw==} + engines: {node: '>=18'} + hasBin: true + peerDependencies: + browserslist: '*' + browserslist@4.28.0: resolution: {integrity: sha512-tbydkR/CxfMwelN0vwdP/pLkDwyAASZ+VfWm4EOwlB6SWhx1sYnWLqo8N5j0rAzPfzfRaxt0mM/4wPU/Su84RQ==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} @@ -2945,6 +3137,9 @@ packages: bser@2.1.1: resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==} + buffer-builder@0.2.0: + resolution: {integrity: sha512-7VPMEPuYznPSoR21NE1zvd2Xna6c/CloiZCfcMXR1Jny6PjX0N4Nsa38zcBFo/FMK+BlA+FLKbJCQ0i2yxp+Xg==} + buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} @@ -2982,8 +3177,8 @@ packages: resolution: {integrity: sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==} engines: {node: '>=8'} - cacheable@2.1.1: - resolution: {integrity: sha512-LmF4AXiSNdiRbI2UjH8pAp9NIXxeQsTotpEaegPiDcnN0YPygDJDV3l/Urc0mL72JWdATEorKqIHEx55nDlONg==} + cacheable@2.2.0: + resolution: {integrity: sha512-LEJxRqfeomiiRd2t0uON6hxAtgOoWDfY3fugebbz+J3vDLO+SkdfFChQcOHTZhj9SYa9iwE9MGYNX72dKiOE4w==} calculate-cache-key-for-tree@2.0.0: resolution: {integrity: sha512-Quw8a6y8CPmRd6eU+mwypktYCwUcf8yVFIRbNZ6tPQEckX9yd+EBVEPC/GSZZrMWH9e7Vz4pT7XhpmyApRByLQ==} @@ -3191,6 +3386,9 @@ packages: colorette@1.4.0: resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==} + colorjs.io@0.5.2: + resolution: {integrity: sha512-twmVoizEW7ylZSN32OgKdXRmo1qg+wT5/6C3xu5b9QsWzSFAhHLn2xd8ro0diCsKfCj1RdaTP/nrcW+vAoQPIw==} + colors@1.0.3: resolution: {integrity: sha512-pFGrxThWcWQ2MsAz6RtgeWe4NK2kUE1WfsrvvlctdII745EW9I0yflqhe7++M5LEc7bV2c/9/5zc8sFcpL0Drw==} engines: {node: '>=0.1.90'} @@ -3554,8 +3752,8 @@ packages: resolution: {integrity: sha512-2z+rWdzbbSZv6/rhtvzvqeZQHrBaqgogqt85sqFNbabZOuFbCVFb8kPeEtZjiKkbrm395irpNKiYeFeLiQnFPg==} engines: {node: '>=18'} - csstype@3.2.1: - resolution: {integrity: sha512-98XGutrXoh75MlgLihlNxAGbUuFQc7l1cqcnEZlLNKc0UrVdPndgmaDmYTDDh929VS/eqTZV0rozmhu2qqT1/g==} + csstype@3.2.2: + resolution: {integrity: sha512-D80T+tiqkd/8B0xNlbstWDG4x6aqVfO52+OlSUNIdkTvmNw0uQpJLeos2J/2XvpyidAFuTPmpad+tUxLndwj6g==} dag-map@2.0.2: resolution: {integrity: sha512-xnsprIzYuDeiyu5zSKwilV/ajRHxnoMlAhEREfyfTgTSViMVY2fGP1ZcHJbtwup26oCkofySU/m6oKJ3HrkW7w==} @@ -3922,11 +4120,6 @@ packages: engines: {node: '>= 20.11'} hasBin: true - ember-code-snippet@https://codeload.github.com/ef4/ember-code-snippet/tar.gz/d054b697098ad52481c94a952ccf8d89ba1f25fe: - resolution: {tarball: https://codeload.github.com/ef4/ember-code-snippet/tar.gz/d054b697098ad52481c94a952ccf8d89ba1f25fe} - version: 3.0.0 - engines: {node: 8.* || >= 10.*} - ember-concurrency@5.1.0: resolution: {integrity: sha512-cnudfQnW7soEN98uEwGgfmmMM5PP8L3pefpQ81FewAtTFZhYyYKyJsMtkk8R/7AHCbcuX5cvY44yndHVF6Vshw==} engines: {node: 16.* || >= 18} @@ -4122,8 +4315,10 @@ packages: es-toolkit@1.41.0: resolution: {integrity: sha512-bDd3oRmbVgqZCJS6WmeQieOrzpl3URcWBUVDXxOELlUW2FuW+0glPOz1n0KnRie+PdyvUZcXz2sOn00c6pPRIA==} - es6-promise@1.0.0: - resolution: {integrity: sha512-8/2Juj7DeNMwxkbcruBmErKcgPSTPgaGIB08nQvlBzaqliW1vMliNOaBQaMzzQAxX9k0vGy+8wwWlgiLuKqZIw==} + esbuild@0.25.12: + resolution: {integrity: sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==} + engines: {node: '>=18'} + hasBin: true escalade@3.2.0: resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} @@ -4532,8 +4727,8 @@ packages: resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} engines: {node: '>=16'} - flat-cache@6.1.18: - resolution: {integrity: sha512-JUPnFgHMuAVmLmoH9/zoZ6RHOt5n9NlUw/sDXsTbROJ2SFoS2DS4s+swAV6UTeTbGH/CAsZIE6M8TaG/3jVxgQ==} + flat-cache@6.1.19: + resolution: {integrity: sha512-l/K33newPTZMTGAnnzaiqSl6NnH7Namh8jBNjrgjprWxGmZUuxx/sJNIRaijOh3n7q7ESbhNZC+pvVZMFdeU4A==} flatted@3.3.3: resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} @@ -5035,6 +5230,9 @@ packages: resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} engines: {node: '>=6'} + import-meta-resolve@4.2.0: + resolution: {integrity: sha512-Iqv2fzaTQN28s/FwZAoFq0ZSs/7hMAHJVX+w8PZl3cY19Pxk6jFFalxQoIfW2826i/fDLXv8IiEZRIT0lDuWcg==} + imurmurhash@0.1.4: resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} engines: {node: '>=0.8.19'} @@ -5431,6 +5629,15 @@ packages: canvas: optional: true + jsdom@26.1.0: + resolution: {integrity: sha512-Cvc9WUhxSMEo4McES3P7oK3QaXldCfNWp7pl2NNeiIFlCoLr3kfq9kb1fxftiwk1FLV7CvpvDfonxtzUDeSOPg==} + engines: {node: '>=18'} + peerDependencies: + canvas: ^3.0.0 + peerDependenciesMeta: + canvas: + optional: true + jsesc@3.1.0: resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} engines: {node: '>=6'} @@ -5736,6 +5943,10 @@ packages: resolution: {integrity: sha512-qvwipnozMohxLXG1pOqoLiZKNkC4r4qqRucSoDwXowsNGDSULiqFTRUF05vcZWnwJSG22qTsynQhxbaMtnX9gw==} engines: {node: '>=8'} + mem@8.1.1: + resolution: {integrity: sha512-qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA==} + engines: {node: '>=10'} + memory-streams@0.1.3: resolution: {integrity: sha512-qVQ/CjkMyMInPaaRMrwWNDvf6boRZXaT/DbQeMYcCWuXPEBf1v8qChOc9OlEVQp2uOvRXa1Qu30fLmKhY6NipA==} @@ -5863,6 +6074,10 @@ packages: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} engines: {node: '>=6'} + mimic-fn@3.1.0: + resolution: {integrity: sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==} + engines: {node: '>=8'} + mimic-fn@4.0.0: resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} engines: {node: '>=12'} @@ -6978,6 +7193,120 @@ packages: engines: {node: 10.* || >= 12.*} hasBin: true + sass-embedded-all-unknown@1.93.3: + resolution: {integrity: sha512-3okGgnE41eg+CPLtAPletu6nQ4N0ij7AeW+Sl5Km4j29XcmqZQeFwYjHe1AlKTEgLi/UAONk1O8i8/lupeKMbw==} + cpu: ['!arm', '!arm64', '!riscv64', '!x64'] + + sass-embedded-android-arm64@1.93.3: + resolution: {integrity: sha512-uqUl3Kt1IqdGVAcAdbmC+NwuUJy8tM+2ZnB7/zrt6WxWVShVCRdFnWR9LT8HJr7eJN7AU8kSXxaVX/gedanPsg==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [android] + + sass-embedded-android-arm@1.93.3: + resolution: {integrity: sha512-8xOw9bywfOD6Wv24BgCmgjkk6tMrsOTTHcb28KDxeJtFtoxiUyMbxo0vChpPAfp2Hyg2tFFKS60s0s4JYk+Raw==} + engines: {node: '>=14.0.0'} + cpu: [arm] + os: [android] + + sass-embedded-android-riscv64@1.93.3: + resolution: {integrity: sha512-2jNJDmo+3qLocjWqYbXiBDnfgwrUeZgZFHJIwAefU7Fn66Ot7rsXl+XPwlokaCbTpj7eMFIqsRAZ/uDueXNCJg==} + engines: {node: '>=14.0.0'} + cpu: [riscv64] + os: [android] + + sass-embedded-android-x64@1.93.3: + resolution: {integrity: sha512-y0RoAU6ZenQFcjM9PjQd3cRqRTjqwSbtWLL/p68y2oFyh0QGN0+LQ826fc0ZvU/AbqCsAizkqjzOn6cRZJxTTQ==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [android] + + sass-embedded-darwin-arm64@1.93.3: + resolution: {integrity: sha512-7zb/hpdMOdKteK17BOyyypemglVURd1Hdz6QGsggy60aUFfptTLQftLRg8r/xh1RbQAUKWFbYTNaM47J9yPxYg==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [darwin] + + sass-embedded-darwin-x64@1.93.3: + resolution: {integrity: sha512-Ek1Vp8ZDQEe327Lz0b7h3hjvWH3u9XjJiQzveq74RPpJQ2q6d9LfWpjiRRohM4qK6o4XOHw1X10OMWPXJtdtWg==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [darwin] + + sass-embedded-linux-arm64@1.93.3: + resolution: {integrity: sha512-RBrHWgfd8Dd8w4fbmdRVXRrhh8oBAPyeWDTKAWw8ZEmuXfVl4ytjDuyxaVilh6rR1xTRTNpbaA/YWApBlLrrNw==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [linux] + + sass-embedded-linux-arm@1.93.3: + resolution: {integrity: sha512-yeiv2y+dp8B4wNpd3+JsHYD0mvpXSfov7IGyQ1tMIR40qv+ROkRqYiqQvAOXf76Qwh4Y9OaYZtLpnsPjfeq6mA==} + engines: {node: '>=14.0.0'} + cpu: [arm] + os: [linux] + + sass-embedded-linux-musl-arm64@1.93.3: + resolution: {integrity: sha512-PS829l+eUng+9W4PFclXGb4uA2+965NHV3/Sa5U7qTywjeeUUYTZg70dJHSqvhrBEfCc2XJABeW3adLJbyQYkw==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [linux] + + sass-embedded-linux-musl-arm@1.93.3: + resolution: {integrity: sha512-fU0fwAwbp7sBE3h5DVU5UPzvaLg7a4yONfFWkkcCp6ZrOiPuGRHXXYriWQ0TUnWy4wE+svsVuWhwWgvlb/tkKg==} + engines: {node: '>=14.0.0'} + cpu: [arm] + os: [linux] + + sass-embedded-linux-musl-riscv64@1.93.3: + resolution: {integrity: sha512-cK1oBY+FWQquaIGEeQ5H74KTO8cWsSWwXb/WaildOO9U6wmUypTgUYKQ0o5o/29nZbWWlM1PHuwVYTSnT23Jjg==} + engines: {node: '>=14.0.0'} + cpu: [riscv64] + os: [linux] + + sass-embedded-linux-musl-x64@1.93.3: + resolution: {integrity: sha512-A7wkrsHu2/I4Zpa0NMuPGkWDVV7QGGytxGyUq3opSXgAexHo/vBPlGoDXoRlSdex0cV+aTMRPjoGIfdmNlHwyg==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [linux] + + sass-embedded-linux-riscv64@1.93.3: + resolution: {integrity: sha512-vWkW1+HTF5qcaHa6hO80gx/QfB6GGjJUP0xLbnAoY4pwEnw5ulGv6RM8qYr8IDhWfVt/KH+lhJ2ZFxnJareisQ==} + engines: {node: '>=14.0.0'} + cpu: [riscv64] + os: [linux] + + sass-embedded-linux-x64@1.93.3: + resolution: {integrity: sha512-k6uFxs+e5jSuk1Y0niCwuq42F9ZC5UEP7P+RIOurIm8w/5QFa0+YqeW+BPWEW5M1FqVOsNZH3qGn4ahqvAEjPA==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [linux] + + sass-embedded-unknown-all@1.93.3: + resolution: {integrity: sha512-o5wj2rLpXH0C+GJKt/VpWp6AnMsCCbfFmnMAttcrsa+U3yrs/guhZ3x55KAqqUsE8F47e3frbsDL+1OuQM5DAA==} + os: ['!android', '!darwin', '!linux', '!win32'] + + sass-embedded-win32-arm64@1.93.3: + resolution: {integrity: sha512-0dOfT9moy9YmBolodwYYXtLwNr4jL4HQC9rBfv6mVrD7ud8ue2kDbn+GVzj1hEJxvEexVSmDCf7MHUTLcGs9xQ==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [win32] + + sass-embedded-win32-x64@1.93.3: + resolution: {integrity: sha512-wHFVfxiS9hU/sNk7KReD+lJWRp3R0SLQEX4zfOnRP2zlvI2X4IQR5aZr9GNcuMP6TmNpX0nQPZTegS8+h9RrEg==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [win32] + + sass-embedded@1.93.3: + resolution: {integrity: sha512-+VUy01yfDqNmIVMd/LLKl2TTtY0ovZN0rTonh+FhKr65mFwIYgU9WzgIZKS7U9/SPCQvWTsTGx9jyt+qRm/XFw==} + engines: {node: '>=16.0.0'} + hasBin: true + + sass@1.93.3: + resolution: {integrity: sha512-elOcIZRTM76dvxNAjqYrucTSI0teAF/L2Lv0s6f6b7FOwcwIuA357bIE871580AjHJuSvLIRUosgV+lIWx6Rgg==} + engines: {node: '>=14.0.0'} + hasBin: true + sass@1.94.0: resolution: {integrity: sha512-Dqh7SiYcaFtdv5Wvku6QgS5IGPm281L+ZtVD1U2FJa7Q0EFRlq8Z3sjYtz6gYObsYThUOz9ArwFqPZx+1azILQ==} engines: {node: '>=14.0.0'} @@ -7021,6 +7350,10 @@ packages: engines: {node: '>=10'} hasBin: true + send@0.18.0: + resolution: {integrity: sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==} + engines: {node: '>= 0.8.0'} + send@0.19.0: resolution: {integrity: sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==} engines: {node: '>= 0.8.0'} @@ -7401,6 +7734,10 @@ packages: symlink-or-copy@1.3.1: resolution: {integrity: sha512-0K91MEXFpBUaywiwSSkmKjnGcasG/rVBXFLJz5DrgGabpYD6N+3yZrfD6uUIfpuTu65DZLHi7N8CizHc07BPZA==} + sync-child-process@1.0.2: + resolution: {integrity: sha512-8lD+t2KrrScJ/7KXCSyfhT3/hRq78rC0wBFqNJXv3mZyn6hW2ypM05JmlSvtqRbeq6jqA94oHbxAr2vYsJ8vDA==} + engines: {node: '>=16.0.0'} + sync-disk-cache@1.3.4: resolution: {integrity: sha512-GlkGeM81GPPEKz/lH7QUTbvqLq7K/IUTuaKDSMulP9XQ42glqNJIN/RKgSOw4y8vxL1gOVvj+W7ruEO4s36eCw==} @@ -7408,6 +7745,10 @@ packages: resolution: {integrity: sha512-vngT2JmkSapgq0z7uIoYtB9kWOOzMihAAYq/D3Pjm/ODOGMgS4r++B+OZ09U4hWR6EaOdy9eqQ7/8ygbH3wehA==} engines: {node: 8.* || >= 10.*} + sync-message-port@1.1.3: + resolution: {integrity: sha512-GTt8rSKje5FilG+wEdfCkOcLL7LWqpMlr2c3LRuKt/YXxcJ52aGSbGBAdI4L3aaqfrBt6y711El53ItyH1NWzg==} + engines: {node: '>=16.0.0'} + table@6.9.0: resolution: {integrity: sha512-9kY+CygyYM6j02t5YFHbNz2FN5QmYGv9zAjVp4lCDjlCw7amdckXlEt/bjMhUIfj4ThGRE4gCUH5+yGnNuPo5A==} engines: {node: '>=10.0.0'} @@ -7806,6 +8147,9 @@ packages: resolution: {integrity: sha512-8X1OWlERjiUY6P6tdeU9E0EwO8RA3bahoOVG7ulOZT5MqgNDUO/BQoVjYiHPcNe+v8glsboZRIw9iToMAA2zAA==} engines: {node: '>= 12'} + varint@6.0.0: + resolution: {integrity: sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==} + vary@1.1.2: resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} engines: {node: '>= 0.8'} @@ -7816,6 +8160,46 @@ packages: vfile@6.0.3: resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} + vite@7.2.2: + resolution: {integrity: sha512-BxAKBWmIbrDgrokdGZH1IgkIk/5mMHDreLDmCJ0qpyJaAteP8NvMhkwr/ZCQNqNH97bw/dANTE9PDzqwJghfMQ==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + peerDependencies: + '@types/node': ^20.19.0 || >=22.12.0 + jiti: '>=1.21.0' + less: ^4.0.0 + lightningcss: ^1.21.0 + sass: ^1.70.0 + sass-embedded: ^1.70.0 + stylus: '>=0.54.8' + sugarss: ^5.0.0 + terser: ^5.16.0 + tsx: ^4.8.1 + yaml: ^2.4.2 + peerDependenciesMeta: + '@types/node': + optional: true + jiti: + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + tsx: + optional: true + yaml: + optional: true + vscode-jsonrpc@8.1.0: resolution: {integrity: sha512-6TDy/abTQk+zDGYazgbIPc+4JoXdwC8NHU9Pbn4UJP1fehUyZmM4RHp5IthX7A6L5KS30PRui+j+tbbMMMafdw==} engines: {node: '>=14.0.0'} @@ -8365,6 +8749,11 @@ snapshots: '@babel/core': 7.28.5 '@babel/helper-plugin-utils': 7.27.1 + '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/plugin-syntax-import-assertions@7.27.1(@babel/core@7.28.5)': dependencies: '@babel/core': 7.28.5 @@ -8864,19 +9253,18 @@ snapshots: '@babel/helper-string-parser': 7.27.1 '@babel/helper-validator-identifier': 7.28.5 - '@cacheable/memoize@2.0.3': - dependencies: - '@cacheable/utils': 2.2.0 + '@bufbuild/protobuf@2.10.1': {} - '@cacheable/memory@2.0.4': + '@cacheable/memory@2.0.5': dependencies: - '@cacheable/utils': 2.2.0 + '@cacheable/utils': 2.3.0(keyv@5.5.4) '@keyv/bigmap': 1.2.0(keyv@5.5.4) hookified: 1.13.0 keyv: 5.5.4 - '@cacheable/utils@2.2.0': + '@cacheable/utils@2.3.0(keyv@5.5.4)': dependencies: + hashery: 1.2.0 keyv: 5.5.4 '@cnakazawa/watch@1.0.4': @@ -9004,9 +9392,107 @@ snapshots: minimatch: 3.1.2 rollup-plugin-copy-assets: 2.0.3(rollup@4.53.2) walk-sync: 3.0.0 - yargs: 17.7.2 - optionalDependencies: - rollup: 4.53.2 + yargs: 17.7.2 + optionalDependencies: + rollup: 4.53.2 + transitivePeerDependencies: + - '@glint/template' + - bufferutil + - canvas + - supports-color + - utf-8-validate + + '@embroider/addon-shim@1.10.2': + dependencies: + '@embroider/shared-internals': 3.0.1 + broccoli-funnel: 3.0.8 + common-ancestor-path: 1.0.1 + semver: 7.7.3 + transitivePeerDependencies: + - supports-color + + '@embroider/compat@4.1.10(@embroider/core@4.2.7(@glint/template@1.5.2))(@glint/template@1.5.2)': + dependencies: + '@babel/code-frame': 7.27.1 + '@babel/core': 7.28.5 + '@babel/plugin-syntax-decorators': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.28.5) + '@babel/plugin-syntax-typescript': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-runtime': 7.28.5(@babel/core@7.28.5) + '@babel/preset-env': 7.28.5(@babel/core@7.28.5) + '@babel/runtime': 7.28.4 + '@babel/traverse': 7.28.5 + '@embroider/core': 4.2.7(@glint/template@1.5.2) + '@embroider/macros': 1.19.4(@glint/template@1.5.2) + '@types/babel__code-frame': 7.0.6 + assert-never: 1.4.0 + babel-import-util: 3.0.1 + babel-plugin-debug-macros: 2.0.0(@babel/core@7.28.5) + babel-plugin-ember-template-compilation: 3.0.1 + babel-plugin-ember-template-compilation-2: babel-plugin-ember-template-compilation@2.4.1 + babel-plugin-syntax-dynamic-import: 6.18.0 + babylon: 6.18.0 + bind-decorator: 1.0.11 + broccoli: 3.5.2 + broccoli-concat: 4.2.5 + broccoli-file-creator: 2.1.1 + broccoli-funnel: 3.0.8 + broccoli-merge-trees: 4.2.0 + broccoli-persistent-filter: 3.1.3 + broccoli-plugin: 4.0.7 + broccoli-source: 3.0.1 + chalk: 4.1.2 + debug: 4.4.3 + fast-sourcemap-concat: 2.1.1 + fs-extra: 9.1.0 + fs-tree-diff: 2.0.1 + jsdom: 26.1.0 + lodash: 4.17.21 + pkg-up: 3.1.0 + resolve: 1.22.11 + resolve-package-path: 4.0.3 + resolve.exports: 2.0.3 + semver: 7.7.3 + symlink-or-copy: 1.3.1 + tree-sync: 2.1.0 + typescript-memoize: 1.1.1 + walk-sync: 3.0.0 + transitivePeerDependencies: + - '@glint/template' + - bufferutil + - canvas + - supports-color + - utf-8-validate + + '@embroider/config-meta-loader@1.0.0': {} + + '@embroider/core@3.5.7(@glint/template@1.5.2)': + dependencies: + '@babel/core': 7.28.5 + '@babel/parser': 7.28.5 + '@babel/traverse': 7.28.5 + '@embroider/macros': 1.16.13(@glint/template@1.5.2) + '@embroider/shared-internals': 2.9.1 + assert-never: 1.4.0 + babel-plugin-ember-template-compilation: 2.3.0 + broccoli-node-api: 1.7.0 + broccoli-persistent-filter: 3.1.3 + broccoli-plugin: 4.0.7 + broccoli-source: 3.0.1 + debug: 4.4.3 + fast-sourcemap-concat: 2.1.1 + filesize: 10.1.6 + fs-extra: 9.1.0 + fs-tree-diff: 2.0.1 + handlebars: 4.7.8 + js-string-escape: 1.0.1 + jsdom: 25.0.1 + lodash: 4.17.21 + resolve: 1.22.11 + resolve-package-path: 4.0.3 + semver: 7.7.3 + typescript-memoize: 1.1.1 + walk-sync: 3.0.0 transitivePeerDependencies: - '@glint/template' - bufferutil @@ -9014,31 +9500,23 @@ snapshots: - supports-color - utf-8-validate - '@embroider/addon-shim@1.10.2': - dependencies: - '@embroider/shared-internals': 3.0.1 - broccoli-funnel: 3.0.8 - common-ancestor-path: 1.0.1 - semver: 7.7.3 - transitivePeerDependencies: - - supports-color - - '@embroider/core@3.5.7(@glint/template@1.5.2)': + '@embroider/core@4.2.7(@glint/template@1.5.2)': dependencies: '@babel/core': 7.28.5 '@babel/parser': 7.28.5 '@babel/traverse': 7.28.5 - '@embroider/macros': 1.16.13(@glint/template@1.5.2) - '@embroider/shared-internals': 2.9.1 + '@embroider/macros': 1.19.4(@glint/template@1.5.2) + '@embroider/reverse-exports': 0.1.2 + '@embroider/shared-internals': 3.0.1 assert-never: 1.4.0 - babel-plugin-ember-template-compilation: 2.3.0 + babel-plugin-ember-template-compilation: 3.0.1 broccoli-node-api: 1.7.0 broccoli-persistent-filter: 3.1.3 broccoli-plugin: 4.0.7 broccoli-source: 3.0.1 debug: 4.4.3 + escape-string-regexp: 4.0.0 fast-sourcemap-concat: 2.1.1 - filesize: 10.1.6 fs-extra: 9.1.0 fs-tree-diff: 2.0.1 handlebars: 4.7.8 @@ -9047,6 +9525,7 @@ snapshots: lodash: 4.17.21 resolve: 1.22.11 resolve-package-path: 4.0.3 + resolve.exports: 2.0.3 semver: 7.7.3 typescript-memoize: 1.1.1 walk-sync: 3.0.0 @@ -9087,6 +9566,11 @@ snapshots: transitivePeerDependencies: - supports-color + '@embroider/reverse-exports@0.1.2': + dependencies: + mem: 8.1.1 + resolve.exports: 2.0.3 + '@embroider/shared-internals@2.9.0': dependencies: babel-import-util: 2.1.1 @@ -9170,6 +9654,112 @@ snapshots: transitivePeerDependencies: - supports-color + '@embroider/vite@1.4.1(@embroider/core@4.2.7(@glint/template@1.5.2))(@glint/template@1.5.2)(rollup@4.53.2)(vite@7.2.2(@types/node@24.10.1)(jiti@2.6.1)(sass-embedded@1.93.3)(sass@1.94.0)(terser@5.44.1)(yaml@2.8.1))': + dependencies: + '@babel/core': 7.28.5 + '@embroider/core': 4.2.7(@glint/template@1.5.2) + '@embroider/macros': 1.19.4(@glint/template@1.5.2) + '@embroider/reverse-exports': 0.1.2 + '@rollup/pluginutils': 5.3.0(rollup@4.53.2) + assert-never: 1.4.0 + browserslist: 4.28.0 + browserslist-to-esbuild: 2.1.1(browserslist@4.28.0) + chalk: 5.6.2 + content-tag: 3.1.3 + debug: 4.4.3 + fast-glob: 3.3.3 + fs-extra: 10.1.0 + jsdom: 25.0.1 + send: 0.18.0 + source-map-url: 0.4.1 + terser: 5.44.1 + vite: 7.2.2(@types/node@24.10.1)(jiti@2.6.1)(sass-embedded@1.93.3)(sass@1.94.0)(terser@5.44.1)(yaml@2.8.1) + transitivePeerDependencies: + - '@glint/template' + - bufferutil + - canvas + - rollup + - supports-color + - utf-8-validate + + '@esbuild/aix-ppc64@0.25.12': + optional: true + + '@esbuild/android-arm64@0.25.12': + optional: true + + '@esbuild/android-arm@0.25.12': + optional: true + + '@esbuild/android-x64@0.25.12': + optional: true + + '@esbuild/darwin-arm64@0.25.12': + optional: true + + '@esbuild/darwin-x64@0.25.12': + optional: true + + '@esbuild/freebsd-arm64@0.25.12': + optional: true + + '@esbuild/freebsd-x64@0.25.12': + optional: true + + '@esbuild/linux-arm64@0.25.12': + optional: true + + '@esbuild/linux-arm@0.25.12': + optional: true + + '@esbuild/linux-ia32@0.25.12': + optional: true + + '@esbuild/linux-loong64@0.25.12': + optional: true + + '@esbuild/linux-mips64el@0.25.12': + optional: true + + '@esbuild/linux-ppc64@0.25.12': + optional: true + + '@esbuild/linux-riscv64@0.25.12': + optional: true + + '@esbuild/linux-s390x@0.25.12': + optional: true + + '@esbuild/linux-x64@0.25.12': + optional: true + + '@esbuild/netbsd-arm64@0.25.12': + optional: true + + '@esbuild/netbsd-x64@0.25.12': + optional: true + + '@esbuild/openbsd-arm64@0.25.12': + optional: true + + '@esbuild/openbsd-x64@0.25.12': + optional: true + + '@esbuild/openharmony-arm64@0.25.12': + optional: true + + '@esbuild/sunos-x64@0.25.12': + optional: true + + '@esbuild/win32-arm64@0.25.12': + optional: true + + '@esbuild/win32-ia32@0.25.12': + optional: true + + '@esbuild/win32-x64@0.25.12': + optional: true + '@eslint-community/eslint-utils@4.9.0(eslint@9.39.1(jiti@2.6.1))': dependencies: eslint: 9.39.1(jiti@2.6.1) @@ -10017,6 +10607,8 @@ snapshots: '@tsconfig/ember@3.0.12': {} + '@types/babel__code-frame@7.0.6': {} + '@types/body-parser@1.19.6': dependencies: '@types/connect': 3.4.38 @@ -10683,6 +11275,12 @@ snapshots: '@glimmer/syntax': 0.95.0 babel-import-util: 3.0.1 + babel-plugin-ember-template-compilation@3.0.1: + dependencies: + '@glimmer/syntax': 0.95.0 + babel-import-util: 3.0.1 + import-meta-resolve: 4.2.0 + babel-plugin-htmlbars-inline-precompile@5.3.1: dependencies: babel-plugin-ember-modules-api-polyfill: 3.5.0 @@ -10742,6 +11340,8 @@ snapshots: transitivePeerDependencies: - supports-color + babylon@6.18.0: {} + backbone@1.6.1: dependencies: underscore: 1.13.7 @@ -10784,6 +11384,8 @@ snapshots: binaryextensions@2.3.0: {} + bind-decorator@1.0.11: {} + bl@4.1.0: dependencies: buffer: 5.7.1 @@ -10988,11 +11590,6 @@ snapshots: transitivePeerDependencies: - supports-color - broccoli-flatiron@0.1.3: - dependencies: - broccoli-plugin: 1.3.1 - mkdirp: 0.5.6 - broccoli-funnel-reducer@1.0.0: {} broccoli-funnel@2.0.2: @@ -11035,19 +11632,6 @@ snapshots: glob: 5.0.15 mkdirp: 0.5.6 - broccoli-merge-trees@1.2.4: - dependencies: - broccoli-plugin: 1.3.1 - can-symlink: 1.0.0 - fast-ordered-set: 1.0.3 - fs-tree-diff: 0.5.9 - heimdalljs: 0.2.6 - heimdalljs-logger: 0.1.10 - rimraf: 2.7.1 - symlink-or-copy: 1.3.1 - transitivePeerDependencies: - - supports-color - broccoli-merge-trees@2.0.1: dependencies: broccoli-plugin: 1.3.1 @@ -11286,6 +11870,11 @@ snapshots: browser-process-hrtime@1.0.0: {} + browserslist-to-esbuild@2.1.1(browserslist@4.28.0): + dependencies: + browserslist: 4.28.0 + meow: 13.2.0 + browserslist@4.28.0: dependencies: baseline-browser-mapping: 2.8.28 @@ -11298,6 +11887,8 @@ snapshots: dependencies: node-int64: 0.4.0 + buffer-builder@0.2.0: {} + buffer-from@1.1.2: {} buffer@5.7.1: @@ -11373,11 +11964,10 @@ snapshots: normalize-url: 4.5.1 responselike: 1.0.2 - cacheable@2.1.1: + cacheable@2.2.0: dependencies: - '@cacheable/memoize': 2.0.3 - '@cacheable/memory': 2.0.4 - '@cacheable/utils': 2.2.0 + '@cacheable/memory': 2.0.5 + '@cacheable/utils': 2.3.0(keyv@5.5.4) hookified: 1.13.0 keyv: 5.5.4 qified: 0.5.2 @@ -11583,6 +12173,8 @@ snapshots: colorette@1.4.0: {} + colorjs.io@0.5.2: {} + colors@1.0.3: {} combined-stream@1.0.8: @@ -11785,7 +12377,7 @@ snapshots: '@asamuzakjp/css-color': 3.2.0 rrweb-cssom: 0.8.0 - csstype@3.2.1: {} + csstype@3.2.2: {} dag-map@2.0.2: {} @@ -12461,18 +13053,6 @@ snapshots: - walrus - whiskers - ember-code-snippet@https://codeload.github.com/ef4/ember-code-snippet/tar.gz/d054b697098ad52481c94a952ccf8d89ba1f25fe: - dependencies: - broccoli-flatiron: 0.1.3 - broccoli-merge-trees: 1.2.4 - broccoli-plugin: 1.3.1 - ember-cli-babel: 7.26.11 - ember-cli-htmlbars: 6.3.0 - es6-promise: 1.0.0 - glob: 7.2.3 - transitivePeerDependencies: - - supports-color - ember-concurrency@5.1.0(@babel/core@7.28.5)(@glint/template@1.5.2): dependencies: '@babel/helper-module-imports': 7.27.1 @@ -12661,7 +13241,7 @@ snapshots: dependencies: '@ember/string': 4.0.1 '@embroider/addon-shim': 1.10.2 - csstype: 3.2.1 + csstype: 3.2.2 decorator-transforms: 2.3.0(@babel/core@7.28.5) ember-modifier: 4.2.2(@babel/core@7.28.5) transitivePeerDependencies: @@ -12868,7 +13448,34 @@ snapshots: es-toolkit@1.41.0: {} - es6-promise@1.0.0: {} + esbuild@0.25.12: + optionalDependencies: + '@esbuild/aix-ppc64': 0.25.12 + '@esbuild/android-arm': 0.25.12 + '@esbuild/android-arm64': 0.25.12 + '@esbuild/android-x64': 0.25.12 + '@esbuild/darwin-arm64': 0.25.12 + '@esbuild/darwin-x64': 0.25.12 + '@esbuild/freebsd-arm64': 0.25.12 + '@esbuild/freebsd-x64': 0.25.12 + '@esbuild/linux-arm': 0.25.12 + '@esbuild/linux-arm64': 0.25.12 + '@esbuild/linux-ia32': 0.25.12 + '@esbuild/linux-loong64': 0.25.12 + '@esbuild/linux-mips64el': 0.25.12 + '@esbuild/linux-ppc64': 0.25.12 + '@esbuild/linux-riscv64': 0.25.12 + '@esbuild/linux-s390x': 0.25.12 + '@esbuild/linux-x64': 0.25.12 + '@esbuild/netbsd-arm64': 0.25.12 + '@esbuild/netbsd-x64': 0.25.12 + '@esbuild/openbsd-arm64': 0.25.12 + '@esbuild/openbsd-x64': 0.25.12 + '@esbuild/openharmony-arm64': 0.25.12 + '@esbuild/sunos-x64': 0.25.12 + '@esbuild/win32-arm64': 0.25.12 + '@esbuild/win32-ia32': 0.25.12 + '@esbuild/win32-x64': 0.25.12 escalade@3.2.0: {} @@ -13338,7 +13945,7 @@ snapshots: file-entry-cache@10.1.4: dependencies: - flat-cache: 6.1.18 + flat-cache: 6.1.19 file-entry-cache@8.0.0: dependencies: @@ -13468,9 +14075,9 @@ snapshots: flatted: 3.3.3 keyv: 4.5.4 - flat-cache@6.1.18: + flat-cache@6.1.19: dependencies: - cacheable: 2.1.1 + cacheable: 2.2.0 flatted: 3.3.3 hookified: 1.13.0 @@ -14092,6 +14699,8 @@ snapshots: parent-module: 1.0.1 resolve-from: 4.0.0 + import-meta-resolve@4.2.0: {} + imurmurhash@0.1.4: {} include-path-searcher@0.1.0: {} @@ -14527,6 +15136,33 @@ snapshots: - supports-color - utf-8-validate + jsdom@26.1.0: + dependencies: + cssstyle: 4.6.0 + data-urls: 5.0.0 + decimal.js: 10.6.0 + html-encoding-sniffer: 4.0.0 + http-proxy-agent: 7.0.2 + https-proxy-agent: 7.0.6 + is-potential-custom-element-name: 1.0.1 + nwsapi: 2.2.22 + parse5: 7.3.0 + rrweb-cssom: 0.8.0 + saxes: 6.0.0 + symbol-tree: 3.2.4 + tough-cookie: 5.1.2 + w3c-xmlserializer: 5.0.0 + webidl-conversions: 7.0.0 + whatwg-encoding: 3.1.1 + whatwg-mimetype: 4.0.0 + whatwg-url: 14.2.0 + ws: 8.18.3 + xml-name-validator: 5.0.0 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + jsesc@3.1.0: {} json-buffer@3.0.0: {} @@ -14868,6 +15504,11 @@ snapshots: mimic-fn: 2.1.0 p-is-promise: 2.1.0 + mem@8.1.1: + dependencies: + map-age-cleaner: 0.1.3 + mimic-fn: 3.1.0 + memory-streams@0.1.3: dependencies: readable-stream: 1.0.34 @@ -15074,6 +15715,8 @@ snapshots: mimic-fn@2.1.0: {} + mimic-fn@3.1.0: {} + mimic-fn@4.0.0: {} mimic-function@5.0.1: {} @@ -16246,6 +16889,103 @@ snapshots: minimist: 1.2.8 walker: 1.0.8 + sass-embedded-all-unknown@1.93.3: + dependencies: + sass: 1.93.3 + optional: true + + sass-embedded-android-arm64@1.93.3: + optional: true + + sass-embedded-android-arm@1.93.3: + optional: true + + sass-embedded-android-riscv64@1.93.3: + optional: true + + sass-embedded-android-x64@1.93.3: + optional: true + + sass-embedded-darwin-arm64@1.93.3: + optional: true + + sass-embedded-darwin-x64@1.93.3: + optional: true + + sass-embedded-linux-arm64@1.93.3: + optional: true + + sass-embedded-linux-arm@1.93.3: + optional: true + + sass-embedded-linux-musl-arm64@1.93.3: + optional: true + + sass-embedded-linux-musl-arm@1.93.3: + optional: true + + sass-embedded-linux-musl-riscv64@1.93.3: + optional: true + + sass-embedded-linux-musl-x64@1.93.3: + optional: true + + sass-embedded-linux-riscv64@1.93.3: + optional: true + + sass-embedded-linux-x64@1.93.3: + optional: true + + sass-embedded-unknown-all@1.93.3: + dependencies: + sass: 1.93.3 + optional: true + + sass-embedded-win32-arm64@1.93.3: + optional: true + + sass-embedded-win32-x64@1.93.3: + optional: true + + sass-embedded@1.93.3: + dependencies: + '@bufbuild/protobuf': 2.10.1 + buffer-builder: 0.2.0 + colorjs.io: 0.5.2 + immutable: 5.1.4 + rxjs: 7.8.2 + supports-color: 8.1.1 + sync-child-process: 1.0.2 + varint: 6.0.0 + optionalDependencies: + sass-embedded-all-unknown: 1.93.3 + sass-embedded-android-arm: 1.93.3 + sass-embedded-android-arm64: 1.93.3 + sass-embedded-android-riscv64: 1.93.3 + sass-embedded-android-x64: 1.93.3 + sass-embedded-darwin-arm64: 1.93.3 + sass-embedded-darwin-x64: 1.93.3 + sass-embedded-linux-arm: 1.93.3 + sass-embedded-linux-arm64: 1.93.3 + sass-embedded-linux-musl-arm: 1.93.3 + sass-embedded-linux-musl-arm64: 1.93.3 + sass-embedded-linux-musl-riscv64: 1.93.3 + sass-embedded-linux-musl-x64: 1.93.3 + sass-embedded-linux-riscv64: 1.93.3 + sass-embedded-linux-x64: 1.93.3 + sass-embedded-unknown-all: 1.93.3 + sass-embedded-win32-arm64: 1.93.3 + sass-embedded-win32-x64: 1.93.3 + + sass@1.93.3: + dependencies: + chokidar: 4.0.3 + immutable: 5.1.4 + source-map-js: 1.2.1 + optionalDependencies: + '@parcel/watcher': 2.5.1 + optional: true + sass@1.94.0: dependencies: chokidar: 4.0.3 @@ -16289,6 +17029,24 @@ snapshots: semver@7.7.3: {} + send@0.18.0: + dependencies: + debug: 2.6.9 + depd: 2.0.0 + destroy: 1.2.0 + encodeurl: 1.0.2 + escape-html: 1.0.3 + etag: 1.8.1 + fresh: 0.5.2 + http-errors: 2.0.0 + mime: 1.6.0 + ms: 2.1.3 + on-finished: 2.4.1 + range-parser: 1.2.1 + statuses: 2.0.1 + transitivePeerDependencies: + - supports-color + send@0.19.0: dependencies: debug: 2.6.9 @@ -16789,6 +17547,10 @@ snapshots: symlink-or-copy@1.3.1: {} + sync-child-process@1.0.2: + dependencies: + sync-message-port: 1.1.3 + sync-disk-cache@1.3.4: dependencies: debug: 2.6.9 @@ -16809,6 +17571,8 @@ snapshots: transitivePeerDependencies: - supports-color + sync-message-port@1.1.3: {} + table@6.9.0: dependencies: ajv: 8.17.1 @@ -17310,6 +18074,8 @@ snapshots: resolve-package-path: 4.0.3 semver: 7.7.3 + varint@6.0.0: {} + vary@1.1.2: {} vfile-message@4.0.3: @@ -17322,6 +18088,23 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.3 + vite@7.2.2(@types/node@24.10.1)(jiti@2.6.1)(sass-embedded@1.93.3)(sass@1.94.0)(terser@5.44.1)(yaml@2.8.1): + dependencies: + esbuild: 0.25.12 + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + postcss: 8.5.6 + rollup: 4.53.2 + tinyglobby: 0.2.15 + optionalDependencies: + '@types/node': 24.10.1 + fsevents: 2.3.3 + jiti: 2.6.1 + sass: 1.94.0 + sass-embedded: 1.93.3 + terser: 5.44.1 + yaml: 2.8.1 + vscode-jsonrpc@8.1.0: {} vscode-languageserver-protocol@3.17.3: