├── .commitlintrc.cjs
├── .eslintignore
├── .eslintrc
├── .gitignore
├── .husky
└── commit-msg
├── .prettierrc
├── .versionrc
├── CHANGELOG.md
├── CONTRIBUTING.md
├── LICENSE
├── README.md
├── package.json
├── packages
└── create-app
│ ├── fs.mts
│ ├── git.mts
│ ├── index.mts
│ ├── npm.mts
│ └── template.mts
├── pnpm-lock.yaml
├── src
└── cli.mts
├── templates
├── component-library
│ ├── .gitignore
│ ├── .vscode
│ │ ├── extensions.json
│ │ └── settings.json
│ ├── README.md
│ ├── index.html
│ ├── package.json
│ ├── src
│ │ ├── components
│ │ │ └── example-element.ts
│ │ ├── index.ts
│ │ └── styles
│ │ │ └── theme.ts
│ ├── tsconfig.json
│ └── vite.config.ts
├── default
│ ├── .gitignore
│ ├── .vscode
│ │ ├── extensions.json
│ │ └── settings.json
│ ├── README.md
│ ├── index.html
│ ├── package.json
│ ├── src
│ │ └── lit-app.ts
│ ├── tsconfig.json
│ └── vite.config.ts
└── production-template
│ ├── .gitignore
│ ├── .prettierrc.json
│ ├── .vscode
│ ├── extensions.json
│ └── settings.json
│ ├── LICENSE
│ ├── README.md
│ ├── index.html
│ ├── package.json
│ ├── pnpm-lock.yaml
│ ├── public
│ ├── index.universal.html
│ ├── manifest.json
│ └── service-worker.js
│ ├── res
│ └── drawable
│ │ ├── favicon.svg
│ │ ├── logo-192x192.png
│ │ ├── logo-48x48.png
│ │ ├── logo-512x512.png
│ │ └── og
│ │ └── default.png
│ ├── src
│ ├── base
│ │ ├── app-404.ts
│ │ ├── app-localstorage.ts
│ │ ├── app-router.ts
│ │ └── styles
│ │ │ ├── default-theme.ts
│ │ │ └── lit-shared-styles.ts
│ ├── home
│ │ └── activities
│ │ │ └── home-app.ts
│ ├── lit-app.ts
│ ├── login
│ │ └── activities
│ │ │ └── app-login.ts
│ └── xconfig
│ │ ├── strings
│ │ ├── index.ts
│ │ └── lang
│ │ │ └── es.ts
│ │ └── typings.d.ts
│ ├── tsconfig.json
│ └── vite.config.ts
├── tsconfig.json
└── types
├── gitconfig.d.ts
├── is-utf8.d.ts
└── license.js.d.ts
/.commitlintrc.cjs:
--------------------------------------------------------------------------------
1 | /**
2 | * Message: "type(scope): commit message"
3 | * Example: `git commit -m "feat(scope): Removed before you go" -m "[Ticket-123](https://pivotal-link)"`
4 | * @see http://marionebl.github.io/commitlint/
5 | *
6 | * @commitlint/config-conventional
7 | * @see https://github.com/conventional-changelog/commitlint/tree/master/@commitlint/config-conventional
8 | */
9 |
10 | const type = [
11 | 'build',
12 | 'chore',
13 | 'ci',
14 | 'docs',
15 | 'feat',
16 | 'fix',
17 | 'perf',
18 | 'refactor',
19 | 'revert',
20 | 'style',
21 | 'test'
22 | ];
23 |
24 | const scope = ['core'];
25 |
26 | module.exports = {
27 | extends: ['@commitlint/config-conventional'],
28 | rules: {
29 | 'header-max-length': [2, 'always', Infinity],
30 | 'type-enum': [2, 'always', type],
31 | 'scope-enum': [2, 'always', scope],
32 | 'footer-leading-blank': [1, 'never'],
33 | 'subject-case': [2, 'always', 'sentence-case']
34 | },
35 | parserPreset: {
36 | parserOpts: {
37 | issuePrefixes: ['Ticket-']
38 | }
39 | }
40 | };
41 |
--------------------------------------------------------------------------------
/.eslintignore:
--------------------------------------------------------------------------------
1 | templates/**/*.ts
2 | node_modules
3 | dist
--------------------------------------------------------------------------------
/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "parser": "@typescript-eslint/parser",
3 | "parserOptions": {
4 | "ecmaVersion": 2020,
5 | "sourceType": "module"
6 | },
7 | "extends": [
8 | "plugin:@typescript-eslint/recommended",
9 | "prettier",
10 | "google"
11 | ],
12 | "plugins": [
13 | "prettier"
14 | ],
15 | "indent": [
16 | "tab"
17 | ],
18 | "rules": {}
19 | }
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | \.DS_Store
2 | \.idea
3 | node_modules
4 | cred/2_script.sh.txt
5 | *.log
6 | .history/
7 | scripts/3_deploy_develop.sh.txt
8 | db
9 | dist/
10 | .env
11 | tmp.*
12 | yarn.lock
--------------------------------------------------------------------------------
/.husky/commit-msg:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | . "$(dirname "$0")/_/husky.sh"
3 |
4 | pnpm commitlint --edit $1
5 |
--------------------------------------------------------------------------------
/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "printWidth": 200,
3 | "bracketSpacing": true,
4 | "htmlWhitespaceSensitivity": "css",
5 | "insertPragma": false,
6 | "jsxBracketSameLine": true,
7 | "jsxSingleQuote": false,
8 | "proseWrap": "preserve",
9 | "arrowParens": "avoid",
10 | "quoteProps": "as-needed",
11 | "requirePragma": false,
12 | "semi": true,
13 | "singleQuote": false,
14 | "tabWidth": 4,
15 | "trailingComma": "none",
16 | "useTabs": true
17 | }
--------------------------------------------------------------------------------
/.versionrc:
--------------------------------------------------------------------------------
1 | {
2 | "header": "# Changelog\n\n\n\nAll notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.\n",
3 | "types": [
4 | {"type": "chore", "section": "Chore"},
5 | {"type": "feat", "section": "Features"},
6 | {"type": "fix", "section": "Bug Fixes"},
7 | {"type": "build", "section": "Build System"},
8 | {"type": "refactor", "section": "Improvements"},
9 | {"type": "perf", "section": "Improvements"},
10 | {"type": "docs", "section": "Documentation"},
11 | {"type": "revert", "section": "Roll Back"},
12 | {"type": "style", "section": "Styling"},
13 | {"type": "test", "section": "Tests"},
14 | {"type": "ci", "section": "CI", "hidden": true}
15 | ],
16 | "scripts": {
17 | "prerelease": "git fetch --tags"
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Changelog
2 |
3 |
4 |
5 | All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
6 |
7 | ## [1.4.0](https://github.com/litelement-dev/create-lit/compare/v1.2.0...v1.4.0) (2022-04-03)
8 |
9 | ## 1.2.0 (2022-02-13)
10 |
11 |
12 | ### Features
13 |
14 | * **core:** Add Convensions - Update prod template ([046c5d1](https://github.com/litelement-dev/create-lit/commit/046c5d11e7dc051086d5a7b7476a03b2706083ad))
15 |
--------------------------------------------------------------------------------
/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | # Contributing to Create lit
2 |
3 | Loving Create lit and want to get involved? Thanks! There are plenty of ways you can help.
4 |
5 | Please take a moment to review this document in order to make the contribution process straightforward and effective for everyone involved.
6 |
7 | Following these guidelines helps to communicate that you respect the time of the developers managing and developing this open source project. In return, they should reciprocate that respect in addressing your issue or assessing patches and features.
8 |
9 | ## Core Ideas
10 |
11 | As much as possible, we try to avoid adding configuration and flags. The purpose of this tool is to provide the best experience for people getting started with `lit`, and this will always be our first priority. This means that sometimes we [sacrifice additional functionality](https://gettingreal.37signals.com/ch05_Half_Not_Half_Assed.php) (such as server rendering) because it is too hard to solve it in a way that wouldn’t require any configuration.
12 |
13 | We prefer **convention, heuristics, or interactivity** over configuration.
14 | Here are a few examples of them in action.
15 |
16 | ### Convention
17 |
18 | Instead of letting the user specify the entry filename, we always assume it to be `src/lit-app.ts`. Rather than letting the user specify the output bundle name, we generate it, but make sure to include the content hash in it. Whenever possible, we want to leverage convention to make good choices for the user, especially in cases where it’s easy to misconfigure something.
19 |
20 | ### Heuristics
21 |
22 | Normally, `npm run dev` runs on port `3000`, and this is not explicitly configurable. Create Lit reads `PORT` environment variable and prefers it when it is specified in `production-template`. The trick is that we know cloud IDEs already specify it automatically, so there is no need for the user to do anything. Create Lit relies on heuristics to do the right thing depending on environment.
23 |
24 | ### Interactivity
25 |
26 | We prefer to add interactivity to the command line interface rather than add configuration flags. For example, `npm run dev` will attempt to run with port `3000` by default, but it may be busy. Many other tools fail. if the port is already being used, `Vite` will automatically try the next available port so this may not be the actual port the server ends up listening on.
27 |
28 | ### Breaking the Rules
29 |
30 | No rules are perfect. Sometimes we may introduce flags or configuration if we believe the value is high enough to justify the complexity. For example, we know that apps may be hosted paths different from the root, and we need to support this use case. However, we still try to fall back to heuristics when possible.
31 |
32 | ## Submitting a Pull Request
33 |
34 | Good pull requests, such as patches, improvements, and new features, are a fantastic help. They should remain focused in scope and avoid containing unrelated commits.
35 |
36 | Please **ask first** if somebody else is already working on this or the core developers think your feature is in-scope for Create Lit. Generally always have a related issue with discussions for whatever you are including.
37 |
38 | Please also provide a **test plan**, i.e. specify how you verified that your addition works.
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2021 litelement.dev
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to deal
5 | in the Software without restriction, including without limitation the rights
6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 | copies of the Software, and to permit persons to whom the Software is
8 | furnished to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in all
11 | copies or substantial portions of the Software.
12 |
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
14 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
15 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
16 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
17 | DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
18 | OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
19 | OR OTHER DEALINGS IN THE SOFTWARE.
20 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
create-lit
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Create lit is a way to create simple-starter-kit `lit` applications. It offers a modern build setup with [Vite](https://vitejs.dev).
11 |
12 | ## Quick Start
13 |
14 | ```bash
15 | npx create-lit my-app
16 | cd my-app
17 | npm run dev
18 | ```
19 |
20 | Then open [http://localhost:3000/](http://localhost:3000/) to see your app.
21 |
22 |
30 |
31 | ## Creating an App
32 |
33 | You’ll need to have Node >= 10 on your system
34 |
35 | To create a new app, you may choose one of the following methods:
36 |
37 | ### npx
38 |
39 | ```bash
40 | npx create-lit my-app
41 | ```
42 |
43 | (npx comes with npm 5.2+ and higher, see instructions for older npm versions)
44 |
45 | ### PNPM
46 |
47 | ```bash
48 | pnpm dlx create-lit my-app
49 | ```
50 |
51 | ### Yarn
52 |
53 | ```bash
54 | yarn create lit my-app
55 | ```
56 |
57 | ### npm
58 |
59 | ```bash
60 | npm init lit my-app
61 | ```
62 |
63 | ## Special mention
64 |
65 | Thanks to [@uetchy](https://github.com/uetchy) and the repo [create-create-app](https://github.com/uetchy/create-create-app) . This repo ports from CJS to ESM from [create-create-app](https://github.com/uetchy/create-create-app)
66 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "create-lit",
3 | "version": "1.5.0",
4 | "main": "./src/cli.js",
5 | "type": "module",
6 | "license": "MIT",
7 | "repository": {
8 | "type": "git",
9 | "url": "https://github.com/litelement-dev/create-lit.git"
10 | },
11 | "scripts": {
12 | "build": "tsup src/cli.mts --minify",
13 | "clean": "shx rm -rf dist",
14 | "dev": "tsup src/cli.mts --watch",
15 | "prepublishOnly": "pnpm clean && pnpm build",
16 | "lint": "eslint --ext .ts --ignore-path .eslintignore .",
17 | "release": "standard-version --no-verify",
18 | "minor": "standard-version --release-as minor --no-verify"
19 | },
20 | "tsup": {
21 | "format": [
22 | "esm"
23 | ]
24 | },
25 | "bin": "dist/cli.js",
26 | "files": [
27 | "dist",
28 | "templates"
29 | ],
30 | "dependencies": {
31 | "@types/cross-spawn": "^6.0.6",
32 | "@types/is-utf8": "^0.2.3",
33 | "@types/uuid": "^10.0.0",
34 | "chalk": "^5.3.0",
35 | "command-exists": "^1.2.9",
36 | "common-tags": "^1.8.2",
37 | "create-create-app": "^7.3.0",
38 | "cross-spawn": "^7.0.3",
39 | "epicfail": "^3.0.0",
40 | "execa": "^9.4.1",
41 | "gitconfig": "^2.0.8",
42 | "globby": "^14.0.2",
43 | "handlebars": "^4.7.8",
44 | "is-utf8": "^0.2.1",
45 | "license.js": "^3.1.2",
46 | "slash": "^5.1.0",
47 | "uuid": "^10.0.0",
48 | "yargs-interactive": "^3.0.1"
49 | },
50 | "devDependencies": {
51 | "@commitlint/cli": "^19.5.0",
52 | "@commitlint/config-conventional": "^19.5.0",
53 | "@types/command-exists": "^1.2.3",
54 | "@types/common-tags": "^1.8.4",
55 | "@types/node": "^22.7.7",
56 | "@typescript-eslint/eslint-plugin": "^8.10.0",
57 | "@typescript-eslint/parser": "^8.10.0",
58 | "eslint": "^9.13.0",
59 | "eslint-config-google": "^0.14.0",
60 | "eslint-config-prettier": "^9.1.0",
61 | "eslint-plugin-prettier": "^5.2.1",
62 | "husky": "^9.1.6",
63 | "import-sort-style-module": "^6.0.0",
64 | "prettier": "^3.3.3",
65 | "shx": "^0.3.4",
66 | "standard-version": "^9.5.0",
67 | "tsup": "^8.3.0",
68 | "typescript": "^5.6.3"
69 | },
70 | "importSort": {
71 | ".js, .mjs, .ts, .mts, .cts": {
72 | "style": "module",
73 | "parser": "typescript"
74 | }
75 | },
76 | "engines": {
77 | "node": ">=22.4.0",
78 | "pnpm": ">=9.0.0"
79 | }
80 | }
--------------------------------------------------------------------------------
/packages/create-app/fs.mts:
--------------------------------------------------------------------------------
1 | import { CommonSpawnOptions } from 'child_process';
2 | import { spawn } from 'cross-spawn';
3 | import fs from 'fs';
4 | import path from 'path';
5 |
6 | export function spawnPromise(
7 | command: string,
8 | args: string[] = [],
9 | options: CommonSpawnOptions = {}
10 | ): Promise {
11 | return new Promise((resolve, reject) => {
12 | const child = spawn(command, args, { stdio: 'inherit', ...options });
13 | child.on('close', (code) => {
14 | if (code !== 0) {
15 | return reject(code);
16 | }
17 | resolve(code);
18 | });
19 | });
20 | }
21 |
22 | export function exists(filePath: string, baseDir: string): boolean {
23 | return fs.existsSync(path.resolve(baseDir, filePath));
24 | }
25 |
26 | export function isOccupied(dirname: string) {
27 | try {
28 | return (
29 | fs.readdirSync(dirname).filter((s) => !s.startsWith('.')).length !== 0
30 | );
31 | } catch (err: any) {
32 | if (err?.code === 'ENOENT') {
33 | return false;
34 | }
35 | throw err;
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/packages/create-app/git.mts:
--------------------------------------------------------------------------------
1 | import { execa } from "execa";
2 | import gitconfig from "gitconfig";
3 |
4 | import { printCommand } from "./index.mjs";
5 |
6 | export async function initGit(root: string) {
7 | printCommand("git init");
8 | execa("git init", { shell: true, cwd: root });
9 | }
10 |
11 | export async function getGitUser(): Promise<{ name?: string; email?: string }> {
12 | try {
13 | const config = await gitconfig.get({ location: "global" });
14 | return config.user ?? {};
15 | } catch (err) {
16 | return {};
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/packages/create-app/index.mts:
--------------------------------------------------------------------------------
1 | import fs from "fs";
2 | import path from "path";
3 | import { fileURLToPath } from "url";
4 |
5 | import chalk from "chalk";
6 | import { epicfail } from "epicfail";
7 | import { CommonOptions, ExecaChildProcess, execa } from "execa";
8 | import { availableLicenses, makeLicenseSync } from "license.js";
9 | import yargsInteractive, { OptionData } from "yargs-interactive";
10 |
11 | import { exists, isOccupied } from "./fs.mjs";
12 | import { getGitUser, initGit } from "./git.mjs";
13 | import { addDeps, getPM, installDeps } from "./npm.mjs";
14 | import { copy, getAvailableTemplates } from "./template.mjs";
15 |
16 | const __filename = fileURLToPath(import.meta.url);
17 |
18 | export interface Option {
19 | [key: string]: OptionData | { default: boolean };
20 | }
21 |
22 | export interface Options {
23 | templateRoot: string;
24 | fallbackAppName?: string;
25 | promptForTemplate?: boolean;
26 | promptForPM?: boolean;
27 | modifyName?: (name: string) => string | Promise;
28 | extra?: Option;
29 | caveat?: string | ((options: AfterHookOptions) => string | void | Promise);
30 | after?: (options: AfterHookOptions) => void | Promise;
31 | }
32 |
33 | export interface View {
34 | name: string;
35 | description: string;
36 | author: string;
37 | email: string;
38 | contact: string;
39 | license: string;
40 | [key: string]: string | number | boolean | any[];
41 | }
42 |
43 | export interface AfterHookOptions {
44 | name: string;
45 | packageDir: string;
46 | template: string;
47 | templateDir: string;
48 | year: number;
49 | answers: Omit;
50 | run: (command: string, options?: CommonOptions) => ExecaChildProcess;
51 | installNpmPackage: (packageName: string) => Promise;
52 | }
53 |
54 | export enum NodePM {
55 | Npm = "npm",
56 | Yarn = "yarn",
57 | Pnpm = "pnpm"
58 | }
59 |
60 | export class CLIError extends Error {
61 | constructor(message: string) {
62 | super(message);
63 | this.name = "CLIError";
64 | }
65 | }
66 |
67 | export async function printCommand(...commands: string[]) {
68 | console.log(chalk.gray(">", ...commands));
69 | }
70 |
71 | function getContact(author: string, email?: string) {
72 | return `${author}${email ? ` <${email}>` : ""}`;
73 | }
74 |
75 | async function getYargsOptions(options: Options) {
76 | const gitUser = await getGitUser();
77 | const availableTemplates = getAvailableTemplates(options.templateRoot);
78 | const isMultipleTemplates = availableTemplates.length > 1;
79 | const askForTemplate = isMultipleTemplates && !!options.promptForTemplate;
80 | const yargOption: Option = {
81 | interactive: { default: true },
82 | description: {
83 | type: "input",
84 | describe: "description",
85 | default: "description",
86 | prompt: "if-no-arg"
87 | },
88 | author: {
89 | type: "input",
90 | describe: "author name",
91 | default: gitUser.name,
92 | prompt: "if-no-arg"
93 | },
94 | email: {
95 | type: "input",
96 | describe: "author email",
97 | default: gitUser.email,
98 | prompt: "if-no-arg"
99 | },
100 | template: {
101 | type: "list",
102 | describe: "template",
103 | default: "default",
104 | prompt: askForTemplate ? "if-no-arg" : "never",
105 | choices: availableTemplates
106 | },
107 | license: {
108 | type: "list",
109 | describe: "license",
110 | choices: [...availableLicenses(), "UNLICENSED"],
111 | default: "MIT",
112 | prompt: "if-no-arg"
113 | },
114 | "node-pm": {
115 | type: "list",
116 | describe: "select package manager to use for installing packages from npm",
117 | choices: ["npm", "yarn", "pnpm"],
118 | default: "npm",
119 | prompt: options.promptForPM ? "if-no-arg" : "never"
120 | },
121 | ...options.extra
122 | };
123 | return yargOption;
124 | }
125 |
126 | export async function create(appName: string, options: Options) {
127 | epicfail(__filename, {
128 | assertExpected: err => err.name === "CLIError"
129 | });
130 |
131 | const firstArg = process.argv[2] || options.fallbackAppName;
132 |
133 | if (firstArg === undefined) {
134 | throw new CLIError(`${appName} `);
135 | }
136 |
137 | const useCurrentDir = firstArg === ".";
138 | const name: string = useCurrentDir ? path.basename(process.cwd()) : options.modifyName ? await Promise.resolve(options.modifyName(firstArg)) : firstArg;
139 | const packageDir = useCurrentDir ? process.cwd() : path.resolve(name);
140 |
141 | if (isOccupied(packageDir)) {
142 | throw new CLIError(`"${firstArg}" is not empty directory. Check ${packageDir}`);
143 | }
144 |
145 | console.log(`\nWelcome to ${chalk.cyan.bold("create-lit")}.\n`);
146 | console.log(`Creating app on ${chalk.cyan.bold(packageDir)}.\n`);
147 |
148 | const yargsOption = await getYargsOptions(options);
149 | const args = await yargsInteractive()
150 | .usage("$0 [args]")
151 | .interactive(yargsOption as any);
152 |
153 | const template = args.template;
154 | const templateDir = path.resolve(options.templateRoot, template);
155 | const year = new Date().getFullYear();
156 | const contact = getContact(args.author, args.email);
157 |
158 | if (!fs.existsSync(templateDir)) {
159 | throw new CLIError("No template found");
160 | }
161 |
162 | const filteredArgs = Object.entries(args)
163 | .filter(arg => arg[0].match(/^[^$_]/) && !["interactive", "template"].includes(arg[0]))
164 | .reduce(
165 | (sum, cur) => ((sum[cur[0]] = cur[1]), sum),
166 | {} as {
167 | [key in keyof View]: View[key];
168 | }
169 | );
170 |
171 | const view = {
172 | ...filteredArgs,
173 | name,
174 | year,
175 | contact
176 | };
177 |
178 | // copy files from template
179 | console.log(`\nCreating a new package in ${chalk.green(packageDir)}.`);
180 | await copy({
181 | packageDir,
182 | templateDir,
183 | view
184 | });
185 |
186 | // create license file
187 | try {
188 | const license = makeLicenseSync(args.license, {
189 | year,
190 | project: name,
191 | description: args.description,
192 | organization: getContact(args.author, args.email)
193 | });
194 | const licenseText = (license.header ?? "") + license.text + (license.warranty ?? "");
195 | fs.writeFileSync(path.resolve(packageDir, "LICENSE"), licenseText);
196 | } catch (e) {
197 | // do not generate LICENSE
198 | }
199 |
200 | // init git
201 | try {
202 | console.log("\nInitializing a git repository");
203 | await initGit(packageDir);
204 | } catch (err: any) {
205 | if (err?.exitCode == 127) return; // no git available
206 | throw err;
207 | }
208 |
209 | const run = async (command: string, options: CommonOptions = {}) => {
210 | const args = command.split(" ");
211 | return execa(args[0], args.slice(1), {
212 | stdio: "inherit",
213 | cwd: packageDir,
214 | ...options
215 | });
216 | };
217 |
218 | // run Node.js related tasks (only if `package.json` does exist in the template root)
219 | let installNpmPackage = async (packageName: string): Promise => {};
220 |
221 | if (exists("package.json", packageDir)) {
222 | let packageManager = args["node-pm"];
223 | if (!options.promptForPM) {
224 | packageManager = getPM(!!options.promptForPM);
225 | }
226 |
227 | console.log(`Installing dependencies using ${packageManager}`);
228 | packageManager = await installDeps(packageDir, packageManager);
229 |
230 | installNpmPackage = async (pkg: string | string[], isDev: boolean = false): Promise => {
231 | await addDeps({
232 | rootDir: packageDir,
233 | deps: Array.isArray(pkg) ? pkg : [pkg],
234 | isDev,
235 | pm: packageManager
236 | });
237 | };
238 | }
239 |
240 | const afterHookOptions = {
241 | name,
242 | packageDir,
243 | template,
244 | templateDir,
245 | year,
246 | run: run as any,
247 | installNpmPackage,
248 | answers: {
249 | ...filteredArgs,
250 | contact
251 | }
252 | };
253 |
254 | // run after hook script
255 | if (options.after) {
256 | await Promise.resolve(options.after(afterHookOptions));
257 | }
258 |
259 | console.log(`\nSuccessfully created ${chalk.bold.cyan(packageDir)}`);
260 |
261 | // show caveat
262 | if (options.caveat) {
263 | switch (typeof options.caveat) {
264 | case "string":
265 | console.log(options.caveat);
266 | break;
267 | case "function":
268 | const response = await Promise.resolve(options.caveat(afterHookOptions));
269 | if (response) {
270 | console.log(response);
271 | }
272 | break;
273 | default:
274 | }
275 | }
276 | }
277 |
--------------------------------------------------------------------------------
/packages/create-app/npm.mts:
--------------------------------------------------------------------------------
1 | import commandExists from "command-exists";
2 |
3 | import { spawnPromise } from "./fs.mjs";
4 | import { CLIError, NodePM, printCommand } from "./index.mjs";
5 |
6 | export function getPM(promptForPM: boolean) {
7 | let ce = commandExists.sync;
8 | if (!promptForPM) {
9 | if (ce("pnpm")) {
10 | return NodePM.Pnpm;
11 | } else if (ce("yarn")) {
12 | return NodePM.Yarn;
13 | } else {
14 | return NodePM.Npm;
15 | }
16 | }
17 | return NodePM.Npm;
18 | }
19 |
20 | export async function installDeps(rootDir: string, pm: NodePM) {
21 | let command: string;
22 | let args: string[];
23 |
24 | switch (pm) {
25 | case NodePM.Npm: {
26 | command = "npm";
27 | args = ["install"];
28 | process.chdir(rootDir);
29 | break;
30 | }
31 | case NodePM.Yarn: {
32 | command = "yarnpkg";
33 | args = ["install", "--cwd", rootDir];
34 | break;
35 | }
36 | case NodePM.Pnpm: {
37 | command = "pnpm";
38 | args = ["install", "--dir", rootDir];
39 | break;
40 | }
41 | }
42 |
43 | printCommand(command, ...args);
44 |
45 | try {
46 | await spawnPromise(command, args, { stdio: "inherit" });
47 | } catch (err) {
48 | throw new CLIError(`Failed to install dependencies: ${err}`);
49 | }
50 | return pm;
51 | }
52 |
53 | export async function addDeps({ rootDir, deps, isDev = false, pm }: { rootDir: string; deps: string[]; isDev?: boolean; pm: NodePM }) {
54 | let command: string;
55 | let args: string[];
56 |
57 | switch (pm) {
58 | case NodePM.Npm: {
59 | command = "npm";
60 | args = ["install", isDev ? "-D" : "-S", ...deps];
61 | process.chdir(rootDir);
62 | break;
63 | }
64 | case NodePM.Yarn: {
65 | command = "yarnpkg";
66 | args = ["add", "--cwd", rootDir, ...deps, isDev ? "-D" : ""];
67 | break;
68 | }
69 | case NodePM.Pnpm: {
70 | command = "pnpm";
71 | args = ["add", "--dir", rootDir, ...deps, isDev ? "-D" : ""];
72 | break;
73 | }
74 | }
75 |
76 | printCommand(command, ...args);
77 |
78 | try {
79 | await spawnPromise(command, args, { stdio: "inherit" });
80 | } catch (err) {
81 | throw new CLIError(`Failed to add dependencies: ${err}`);
82 | }
83 | }
84 |
--------------------------------------------------------------------------------
/packages/create-app/template.mts:
--------------------------------------------------------------------------------
1 | import fs from "fs";
2 | import path from "path";
3 |
4 | import { globby } from "globby";
5 | import Handlebars from "handlebars";
6 | import isUtf8 from "is-utf8";
7 | import slash from "slash";
8 | import { v4 as uuidv4 } from "uuid";
9 |
10 | import { View } from "./index.mjs";
11 |
12 | function split(word: string): string[] {
13 | return word.split(/[-_\s]+/);
14 | }
15 |
16 | function space(word: string): string {
17 | return split(trim(word)).join(" ");
18 | }
19 | Handlebars.registerHelper("space", space);
20 |
21 | function trim(text: string) {
22 | return text.replace(/[\r\n]/g, "");
23 | }
24 | Handlebars.registerHelper("trim", trim);
25 |
26 | function upper(text: string) {
27 | return trim(text).toUpperCase();
28 | }
29 | Handlebars.registerHelper("upper", upper);
30 |
31 | function lower(text: string, options?: any) {
32 | const space = options && options.hash && options.hash.space;
33 | return trim(text).toLowerCase();
34 | }
35 | Handlebars.registerHelper("lower", lower);
36 |
37 | function capital(text: string, options?: any) {
38 | const space = options && options.hash && options.hash.space;
39 | return split(trim(text))
40 | .map(s => s.charAt(0).toUpperCase() + s.slice(1).toLowerCase())
41 | .join(space ? " " : "");
42 | }
43 | Handlebars.registerHelper("capital", capital);
44 |
45 | function camel(text: string) {
46 | return capital(text).replace(/^./, s => s.toLowerCase());
47 | }
48 | Handlebars.registerHelper("camel", camel);
49 |
50 | function snake(text: string) {
51 | return capital(text)
52 | .replace(/(?<=([a-z](?=[A-Z])|[A-Za-z](?=[0-9])))(?=[A-Z0-9])/g, "_")
53 | .toLowerCase();
54 | }
55 | Handlebars.registerHelper("snake", snake);
56 |
57 | function kebab(text: string) {
58 | return snake(text).replace(/_/g, "-");
59 | }
60 | Handlebars.registerHelper("kebab", kebab);
61 |
62 | function uuid() {
63 | return uuidv4();
64 | }
65 | Handlebars.registerHelper("uuid", uuid);
66 |
67 | function format(text: Buffer | string, view: T) {
68 | const template = Handlebars.compile(text.toString(), { noEscape: true });
69 | return template(view);
70 | }
71 |
72 | function prepareDirectory(filePath: string) {
73 | try {
74 | const target = path.dirname(filePath);
75 | fs.mkdirSync(target, { recursive: true });
76 | } catch {}
77 | }
78 |
79 | export function getAvailableTemplates(root: string) {
80 | return fs.readdirSync(root).filter(d => !d.startsWith("."));
81 | }
82 |
83 | export interface CopyConfig {
84 | packageDir: string;
85 | templateDir: string;
86 | view: View;
87 | }
88 |
89 | export async function copy(args: CopyConfig) {
90 | const templateFiles = await globby(slash(args.templateDir), { dot: true });
91 | for (const sourcePath of templateFiles) {
92 | const relativePath = path.relative(args.templateDir, sourcePath);
93 | const targetPath = format(path.resolve(args.packageDir, relativePath), args.view);
94 | prepareDirectory(targetPath);
95 |
96 | let sourceData = fs.readFileSync(sourcePath);
97 | let targetData = sourceData;
98 | if (isUtf8(sourceData)) {
99 | targetData = Buffer.from(format(sourceData, args.view));
100 | }
101 | fs.writeFileSync(targetPath, targetData, "utf-8");
102 | }
103 | }
104 |
--------------------------------------------------------------------------------
/src/cli.mts:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env node
2 |
3 | import { resolve } from "path";
4 | import { dirname, join } from "path";
5 | import { fileURLToPath } from "url";
6 |
7 | import { stripIndents } from "common-tags";
8 |
9 | import { create } from "../packages/create-app/index.mjs";
10 |
11 | const __filename = fileURLToPath(import.meta.url);
12 | const __dirname = dirname(__filename);
13 |
14 | const templateRoot = resolve(__dirname, "..", "templates");
15 |
16 | // See https://github.com/uetchy/create-create-app/blob/master/README.md for the all options.
17 | create("create-lit", {
18 | templateRoot,
19 | promptForTemplate: true,
20 | fallbackAppName: "lit-app",
21 | modifyName: name => {
22 | name = name.toLowerCase();
23 | const regexDashCase = /^[a-z]+(-[a-z]+)*$/;
24 | if (!regexDashCase.test(name)) {
25 | throw new Error("Project name must be dash-cased. For example my-app");
26 | }
27 |
28 | if (!name.includes("-")) {
29 | console.log(stripIndents`
30 | NOTE: Because your project name is not dash-case,
31 | "element" has been added as a suffix.
32 | `);
33 | return `${name}-element`;
34 | }
35 |
36 | return name;
37 | },
38 | caveat: ({ name }) => stripIndents`
39 | Successfully created your Lit project!
40 | Now run:
41 | cd ${name}
42 | npm run dev
43 | `
44 | });
45 |
--------------------------------------------------------------------------------
/templates/component-library/.gitignore:
--------------------------------------------------------------------------------
1 | .idea
2 | .git
3 | build
4 | node_modules
5 | .DS_Store
6 | dist/
7 | .history
8 | *.log
9 |
--------------------------------------------------------------------------------
/templates/component-library/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | // See https://go.microsoft.com/fwlink/?LinkId=827846 to learn about workspace recommendations.
3 | // Extension identifier format: ${publisher}.${name}. Example: vscode.csharp
4 | // List of extensions which should be recommended for users of this workspace.
5 | "recommendations": [
6 | "runem.lit-plugin","oderwat.indent-rainbow","lit.lit-snippets","esbenp.prettier-vscode"
7 | ],
8 | // List of extensions recommended by VS Code that should not be recommended for users of this workspace.
9 | "unwantedRecommendations": []
10 | }
--------------------------------------------------------------------------------
/templates/component-library/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "typescript.tsdk": "node_modules/typescript/lib",
3 | "lit-plugin.strict": true,
4 | "editor.rulers": [180],
5 | }
6 |
--------------------------------------------------------------------------------
/templates/component-library/README.md:
--------------------------------------------------------------------------------
1 | # {{name}}
2 |
3 | {{description}}
4 |
--------------------------------------------------------------------------------
/templates/component-library/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | {{capital name space=true}} Lit Element Simple Starter Kit
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/templates/component-library/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "{{kebab name}}",
3 | "version": "1.0.0",
4 | "main": "./dist/{{kebab name}}.umd.js",
5 | "module": "./dist/{{kebab name}}.es.js",
6 | "exports": {
7 | ".": {
8 | "import": "./dist/{{kebab name}}.es.js",
9 | "require": "./dist/{{kebab name}}.umd.js"
10 | }
11 | },
12 | "license": "MIT",
13 | "scripts": {
14 | "dev": "vite",
15 | "build": "vite build"
16 | },
17 | "dependencies": {
18 | "lit": "^3.2.1"
19 | },
20 | "devDependencies": {
21 | "@types/node": "^22.7.7",
22 | "vite": "^5.4.9"
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/templates/component-library/src/components/example-element.ts:
--------------------------------------------------------------------------------
1 | import { LitElement, html, css } from 'lit';
2 | import { customElement, property } from 'lit/decorators.js';
3 | import { theme } from '../styles/theme';
4 |
5 | @customElement('example-element')
6 | export class ExampleComponent extends LitElement {
7 | static styles = [
8 | theme,
9 | css`
10 | :host {
11 | display: block;
12 | color: var(--color-primary);
13 | }
14 | `
15 | ];
16 |
17 | @property() name = '{{capital name space=true}}';
18 |
19 | render() {
20 | return html`Hello, ${this.name} `;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/templates/component-library/src/index.ts:
--------------------------------------------------------------------------------
1 | export { ExampleComponent } from './components/example-element';
--------------------------------------------------------------------------------
/templates/component-library/src/styles/theme.ts:
--------------------------------------------------------------------------------
1 | import { css } from 'lit';
2 |
3 | /**
4 | * Global Styles - can be imported in Lit components and referenced in your style definition.
5 | * @ref https://material.io/design/color/the-color-system.html
6 | */
7 | export let theme = css`
8 | :host {
9 | --color-primary: #4287f5;
10 | --color-secondary: #9f40f7;
11 |
12 | --color-background: #f9f9f9;
13 | --color-on-background: #535353;
14 |
15 | --color-surface: #ffffff;
16 | --color-on-surface: #535353;
17 | }
18 | `
19 | export default theme;
--------------------------------------------------------------------------------
/templates/component-library/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | /* Visit https://aka.ms/tsconfig.json to read more about this file */
4 |
5 | /* Basic Options */
6 | // "incremental": true, /* Enable incremental compilation */
7 | "target": "es2020", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'. */
8 | "module": "es2020", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. */
9 | // "lib": [], /* Specify library files to be included in the compilation. */
10 | // "allowJs": true, /* Allow javascript files to be compiled. */
11 | // "checkJs": true, /* Report errors in .js files. */
12 | // "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', 'react', 'react-jsx' or 'react-jsxdev'. */
13 | // "declaration": true, /* Generates corresponding '.d.ts' file. */
14 | // "declarationMap": true, /* Generates a sourcemap for each corresponding '.d.ts' file. */
15 | // "sourceMap": true, /* Generates corresponding '.map' file. */
16 | // "outFile": "./", /* Concatenate and emit output to single file. */
17 | // "outDir": "./", /* Redirect output structure to the directory. */
18 | // "rootDir": "./", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */
19 | // "composite": true, /* Enable project compilation */
20 | // "tsBuildInfoFile": "./", /* Specify file to store incremental compilation information */
21 | // "removeComments": true, /* Do not emit comments to output. */
22 | // "noEmit": true, /* Do not emit outputs. */
23 | // "importHelpers": true, /* Import emit helpers from 'tslib'. */
24 | // "downlevelIteration": true, /* Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. */
25 | // "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */
26 |
27 | /* Strict Type-Checking Options */
28 | "strict": true, /* Enable all strict type-checking options. */
29 | // "noImplicitAny": true, /* Raise error on expressions and declarations with an implied 'any' type. */
30 | // "strictNullChecks": true, /* Enable strict null checks. */
31 | // "strictFunctionTypes": true, /* Enable strict checking of function types. */
32 | // "strictBindCallApply": true, /* Enable strict 'bind', 'call', and 'apply' methods on functions. */
33 | // "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */
34 | // "noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */
35 | // "alwaysStrict": true, /* Parse in strict mode and emit "use strict" for each source file. */
36 |
37 | /* Additional Checks */
38 | // "noUnusedLocals": true, /* Report errors on unused locals. */
39 | // "noUnusedParameters": true, /* Report errors on unused parameters. */
40 | // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */
41 | // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */
42 | // "noUncheckedIndexedAccess": true, /* Include 'undefined' in index signature results */
43 | // "noPropertyAccessFromIndexSignature": true, /* Require undeclared properties from index signatures to use element accesses. */
44 |
45 | /* Module Resolution Options */
46 | "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */
47 | // "baseUrl": "./", /* Base directory to resolve non-absolute module names. */
48 | // "paths": {}, /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */
49 | // "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */
50 | // "typeRoots": [], /* List of folders to include type definitions from. */
51 | // "types": [], /* Type declaration files to be included in compilation. */
52 | // "allowSyntheticDefaultImports": true, /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */
53 | "esModuleInterop": true, /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */
54 | // "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */
55 | // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */
56 |
57 | /* Source Map Options */
58 | // "sourceRoot": "", /* Specify the location where debugger should locate TypeScript files instead of source locations. */
59 | // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */
60 | // "inlineSourceMap": true, /* Emit a single file with source maps instead of having a separate file. */
61 | // "inlineSources": true, /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */
62 |
63 | /* Experimental Options */
64 | "experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */
65 | // "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */
66 |
67 | /* Advanced Options */
68 | "skipLibCheck": true, /* Skip type checking of declaration files. */
69 | "forceConsistentCasingInFileNames": true /* Disallow inconsistently-cased references to the same file. */
70 | }
71 | }
72 |
--------------------------------------------------------------------------------
/templates/component-library/vite.config.ts:
--------------------------------------------------------------------------------
1 | import path from 'path';
2 | import { defineConfig } from "vite";
3 |
4 | export default defineConfig({
5 | build: {
6 | lib: {
7 | entry: path.resolve(__dirname, 'src/index.ts'),
8 | name: 'ComponentLibrary',
9 | },
10 | rollupOptions: {
11 | external: ['lit'],
12 | output: {
13 | globals: {
14 | lit: 'lit',
15 | },
16 | },
17 | },
18 | },
19 | });
20 |
--------------------------------------------------------------------------------
/templates/default/.gitignore:
--------------------------------------------------------------------------------
1 | .idea
2 | .git
3 | build
4 | node_modules
5 | .DS_Store
6 | dist/
7 | .history
8 | *.log
9 |
--------------------------------------------------------------------------------
/templates/default/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | // See https://go.microsoft.com/fwlink/?LinkId=827846 to learn about workspace recommendations.
3 | // Extension identifier format: ${publisher}.${name}. Example: vscode.csharp
4 | // List of extensions which should be recommended for users of this workspace.
5 | "recommendations": [
6 | "runem.lit-plugin","oderwat.indent-rainbow","lit.lit-snippets","esbenp.prettier-vscode"
7 | ],
8 | // List of extensions recommended by VS Code that should not be recommended for users of this workspace.
9 | "unwantedRecommendations": []
10 | }
--------------------------------------------------------------------------------
/templates/default/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "typescript.tsdk": "node_modules/typescript/lib",
3 | "lit-plugin.strict": true,
4 | "editor.rulers": [180],
5 | }
6 |
--------------------------------------------------------------------------------
/templates/default/README.md:
--------------------------------------------------------------------------------
1 | # {{name}}
2 |
3 | {{description}}
4 |
--------------------------------------------------------------------------------
/templates/default/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | {{capital name space=true}} Lit Element Simple Starter Kit
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/templates/default/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "{{name}}",
3 | "version": "1.0.0",
4 | "main": "index.js",
5 | "license": "MIT",
6 | "scripts": {
7 | "dev": "vite"
8 | },
9 | "dependencies": {
10 | "lit": "^3.2.1"
11 | },
12 | "devDependencies": {
13 | "@types/node": "^22.7.7",
14 | "vite": "^5.4.9"
15 | }
16 | }
--------------------------------------------------------------------------------
/templates/default/src/lit-app.ts:
--------------------------------------------------------------------------------
1 | import {LitElement, html, css} from 'lit';
2 | import {customElement, property} from 'lit/decorators.js';
3 |
4 | @customElement('lit-app')
5 | export class LitApp extends LitElement {
6 | static styles = [
7 | css`
8 | :host {
9 | display: block;
10 | }
11 | `
12 | ];
13 |
14 | @property() name = '{{capital name space=true}}';
15 |
16 | render() {
17 | return html`Hello, ${this.name} `;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/templates/default/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | /* Visit https://aka.ms/tsconfig.json to read more about this file */
4 |
5 | /* Basic Options */
6 | // "incremental": true, /* Enable incremental compilation */
7 | "target": "es2020", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'. */
8 | "module": "es2020", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. */
9 | // "lib": [], /* Specify library files to be included in the compilation. */
10 | // "allowJs": true, /* Allow javascript files to be compiled. */
11 | // "checkJs": true, /* Report errors in .js files. */
12 | // "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', 'react', 'react-jsx' or 'react-jsxdev'. */
13 | // "declaration": true, /* Generates corresponding '.d.ts' file. */
14 | // "declarationMap": true, /* Generates a sourcemap for each corresponding '.d.ts' file. */
15 | // "sourceMap": true, /* Generates corresponding '.map' file. */
16 | // "outFile": "./", /* Concatenate and emit output to single file. */
17 | // "outDir": "./", /* Redirect output structure to the directory. */
18 | // "rootDir": "./", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */
19 | // "composite": true, /* Enable project compilation */
20 | // "tsBuildInfoFile": "./", /* Specify file to store incremental compilation information */
21 | // "removeComments": true, /* Do not emit comments to output. */
22 | // "noEmit": true, /* Do not emit outputs. */
23 | // "importHelpers": true, /* Import emit helpers from 'tslib'. */
24 | // "downlevelIteration": true, /* Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. */
25 | // "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */
26 |
27 | /* Strict Type-Checking Options */
28 | "strict": true, /* Enable all strict type-checking options. */
29 | // "noImplicitAny": true, /* Raise error on expressions and declarations with an implied 'any' type. */
30 | // "strictNullChecks": true, /* Enable strict null checks. */
31 | // "strictFunctionTypes": true, /* Enable strict checking of function types. */
32 | // "strictBindCallApply": true, /* Enable strict 'bind', 'call', and 'apply' methods on functions. */
33 | // "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */
34 | // "noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */
35 | // "alwaysStrict": true, /* Parse in strict mode and emit "use strict" for each source file. */
36 |
37 | /* Additional Checks */
38 | // "noUnusedLocals": true, /* Report errors on unused locals. */
39 | // "noUnusedParameters": true, /* Report errors on unused parameters. */
40 | // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */
41 | // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */
42 | // "noUncheckedIndexedAccess": true, /* Include 'undefined' in index signature results */
43 | // "noPropertyAccessFromIndexSignature": true, /* Require undeclared properties from index signatures to use element accesses. */
44 |
45 | /* Module Resolution Options */
46 | "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */
47 | // "baseUrl": "./", /* Base directory to resolve non-absolute module names. */
48 | // "paths": {}, /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */
49 | // "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */
50 | // "typeRoots": [], /* List of folders to include type definitions from. */
51 | // "types": [], /* Type declaration files to be included in compilation. */
52 | // "allowSyntheticDefaultImports": true, /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */
53 | "esModuleInterop": true, /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */
54 | // "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */
55 | // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */
56 |
57 | /* Source Map Options */
58 | // "sourceRoot": "", /* Specify the location where debugger should locate TypeScript files instead of source locations. */
59 | // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */
60 | // "inlineSourceMap": true, /* Emit a single file with source maps instead of having a separate file. */
61 | // "inlineSources": true, /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */
62 |
63 | /* Experimental Options */
64 | "experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */
65 | // "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */
66 |
67 | /* Advanced Options */
68 | "skipLibCheck": true, /* Skip type checking of declaration files. */
69 | "forceConsistentCasingInFileNames": true /* Disallow inconsistently-cased references to the same file. */
70 | }
71 | }
72 |
--------------------------------------------------------------------------------
/templates/default/vite.config.ts:
--------------------------------------------------------------------------------
1 | import { defineConfig } from "vite";
2 |
3 | export default defineConfig({});
4 |
--------------------------------------------------------------------------------
/templates/production-template/.gitignore:
--------------------------------------------------------------------------------
1 | .idea
2 | .git
3 | .DS_Store
4 | .history
5 | .firebase
6 | build
7 | dist
8 | node_modules
9 | *.log
10 |
--------------------------------------------------------------------------------
/templates/production-template/.prettierrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "arrowParens": "avoid",
3 | "bracketSpacing": true,
4 | "htmlWhitespaceSensitivity": "css",
5 | "insertPragma": false,
6 | "jsxBracketSameLine": false,
7 | "jsxSingleQuote": false,
8 | "printWidth": 180,
9 | "proseWrap": "preserve",
10 | "quoteProps": "as-needed",
11 | "requirePragma": false,
12 | "semi": true,
13 | "singleQuote": true,
14 | "tabWidth": 2,
15 | "trailingComma": "none",
16 | "useTabs": true,
17 | "resolveGlobalModules": true
18 | }
19 |
--------------------------------------------------------------------------------
/templates/production-template/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | // See https://go.microsoft.com/fwlink/?LinkId=827846 to learn about workspace recommendations.
3 | // Extension identifier format: ${publisher}.${name}. Example: vscode.csharp
4 | // List of extensions which should be recommended for users of this workspace.
5 | "recommendations": [
6 | "runem.lit-plugin","oderwat.indent-rainbow","lit.lit-snippets","esbenp.prettier-vscode"
7 | ],
8 | // List of extensions recommended by VS Code that should not be recommended for users of this workspace.
9 | "unwantedRecommendations": []
10 | }
--------------------------------------------------------------------------------
/templates/production-template/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "typescript.tsdk": "node_modules/typescript/lib",
3 | "lit-plugin.strict": true,
4 | "editor.rulers": [180],
5 | }
6 |
--------------------------------------------------------------------------------
/templates/production-template/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2024 Herberth Obregón
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to deal
5 | in the Software without restriction, including without limitation the rights
6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 | copies of the Software, and to permit persons to whom the Software is
8 | furnished to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in all
11 | copies or substantial portions of the Software.
12 |
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
14 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
15 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
16 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
17 | DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
18 | OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
19 | OR OTHER DEALINGS IN THE SOFTWARE.
20 |
--------------------------------------------------------------------------------
/templates/production-template/README.md:
--------------------------------------------------------------------------------
1 | # LitElement starter site
2 |
3 | this project has a ready to production configuration.
4 |
5 | ## Litelement + Typescript + Vitejs + Rollup.js
6 | This project includes a **VERY sample site** to start using LitElement with TypeScript (you can also use JS).
7 |
8 | The project tries to have the same structure as an `Android project`. The idea is that it feels familiar and we develop with a standard (or as similar as possible)
9 |
10 | This will help the LitElement developer community grow and we all align our efforts in a standardized and orderly direction.
11 |
12 | You will find a `res` folder and within it it should have the same structure as a **Native Android Project**.
13 |
14 | With this configuration you can mix and use javascript. But we **highly recommend** that you use Typescript, if you don't already know Typescript you should learn it as this will greatly improve the quality of your code.
15 |
16 | # Let's write the future together 🚀
17 | ## ⚙ Setup
18 |
19 | Install dependencies:
20 |
21 | ```bash
22 | npm i
23 | #or
24 | yarn
25 | ```
26 |
27 | ## 🚀 Start
28 |
29 | This sample uses the `Babel` and `esbuild` with `Vitejs` to produce JavaScript that runs in modern browsers.
30 |
31 | ### Dev Server
32 |
33 | This sample uses [Vitejs](https://vitejs.dev/) for previewing the project without additional build steps. `Vitejs` handles resolving Node-style "bare" import specifiers, which aren't supported in browsers. It also automatically transpiles Typescript to JavaScript files.
34 |
35 | There is a development HTML file located at `index.html` that you can view at http://localhost:8000.
36 |
37 | To `build` and `run` the JavaScript version of your component (include watcher):
38 |
39 | ```bash
40 | npm run dev
41 | # or
42 | yarn dev
43 | ```
44 |
45 |
46 | ## 📝 Editing (highly recommend)
47 |
48 | If you use VS Code, we **highly recommend** the [lit-plugin extension](https://marketplace.visualstudio.com/items?itemName=runem.lit-plugin), made by [@runem](https://github.com/runem) which enables some extremely useful features for lit-html templates:
49 | - Syntax highlighting
50 | - Type-checking
51 | - Code completion
52 | - Hover-over docs
53 | - Jump to definition
54 | - Linting
55 | - Quick Fixes
56 |
57 | The project is setup to recommend lit-plugin to VS Code users if they don't already have it installed.
58 |
59 | **Go to repo to leave a start ★ -> [https://github.com/runem/lit-analyzer](https://github.com/runem/lit-analyzer)**
60 |
61 | ## 📄 Formatting
62 |
63 | [Prettier](https://prettier.io/) is used for code formatting. It has been pre-configured according to the Polymer Project's style. You can change this in `.prettierrc.json`.
64 |
65 | Prettier has not been configured to run when commiting files, but this can be added with Husky and and `pretty-quick`. See the [prettier.io](https://prettier.io/) site for instructions.
66 |
67 | If you use VS code, we reccommend the [prettier-vscode extension](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode)
68 |
69 | ## Contribute and more information
70 |
71 | See we develop a [Get started web site (soon)](#) to show more information.
72 | If you have the desire to collaborate, send me a Tweet to [@herberthobregon](https://twitter.com/herberthobregon) and let's talk!
--------------------------------------------------------------------------------
/templates/production-template/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | LitElement Starter Project
6 |
7 |
8 |
9 |
10 |
11 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/templates/production-template/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "private": true,
3 | "name": "boda-app",
4 | "version": "1.0.0",
5 | "main": "index.html",
6 | "type": "module",
7 | "scripts": {
8 | "dev": "vite",
9 | "build": "vite build"
10 | },
11 | "dependencies": {
12 | "@conectate/ct-lit": "^4.0.0",
13 | "@conectate/ct-router": "^4.0.0",
14 | "lit": "^3.2.1"
15 | },
16 | "devDependencies": {
17 | "@babel/core": "^7.25.8",
18 | "@babel/plugin-proposal-decorators": "^7.25.7",
19 | "@babel/plugin-proposal-export-default-from": "^7.25.8",
20 | "@babel/plugin-syntax-dynamic-import": "^7.8.3",
21 | "@babel/plugin-syntax-import-meta": "^7.10.4",
22 | "@babel/preset-env": "^7.25.8",
23 | "@firebase/app-types": "^0.9.2",
24 | "@rollup/plugin-babel": "^6.0.4",
25 | "@rollup/plugin-node-resolve": "^15.3.0",
26 | "@rollup/plugin-terser": "^0.4.4",
27 | "@types/node": "^22.7.7",
28 | "babel-plugin-bundled-import-meta": "^0.3.2",
29 | "babel-plugin-template-html-minifier": "^4.1.0",
30 | "core-js": "^3.38.1",
31 | "prettier": "^3.3.3",
32 | "rollup": "^4.24.0",
33 | "rollup-plugin-copy": "^3.5.0",
34 | "rollup-plugin-html-literals": "^1.1.8",
35 | "rollup-plugin-summary": "^2.0.1",
36 | "rollup-plugin-visualizer": "^5.12.0",
37 | "typescript": "^5.6.3",
38 | "vite": "^5.4.9"
39 | }
40 | }
--------------------------------------------------------------------------------
/templates/production-template/pnpm-lock.yaml:
--------------------------------------------------------------------------------
1 | lockfileVersion: '9.0'
2 |
3 | settings:
4 | autoInstallPeers: true
5 | excludeLinksFromLockfile: false
6 |
7 | importers:
8 |
9 | .:
10 | dependencies:
11 | '@conectate/ct-lit':
12 | specifier: ^4.0.0
13 | version: 4.0.0
14 | '@conectate/ct-router':
15 | specifier: ^4.0.0
16 | version: 4.0.0
17 | lit:
18 | specifier: ^3.2.1
19 | version: 3.2.1
20 | devDependencies:
21 | '@babel/core':
22 | specifier: ^7.25.8
23 | version: 7.25.8
24 | '@babel/plugin-proposal-decorators':
25 | specifier: ^7.25.7
26 | version: 7.25.7(@babel/core@7.25.8)
27 | '@babel/plugin-proposal-export-default-from':
28 | specifier: ^7.25.8
29 | version: 7.25.8(@babel/core@7.25.8)
30 | '@babel/plugin-syntax-dynamic-import':
31 | specifier: ^7.8.3
32 | version: 7.8.3(@babel/core@7.25.8)
33 | '@babel/plugin-syntax-import-meta':
34 | specifier: ^7.10.4
35 | version: 7.10.4(@babel/core@7.25.8)
36 | '@babel/preset-env':
37 | specifier: ^7.25.8
38 | version: 7.25.8(@babel/core@7.25.8)
39 | '@firebase/app-types':
40 | specifier: ^0.9.2
41 | version: 0.9.2
42 | '@rollup/plugin-babel':
43 | specifier: ^6.0.4
44 | version: 6.0.4(@babel/core@7.25.8)(rollup@4.24.0)
45 | '@rollup/plugin-node-resolve':
46 | specifier: ^15.3.0
47 | version: 15.3.0(rollup@4.24.0)
48 | '@rollup/plugin-terser':
49 | specifier: ^0.4.4
50 | version: 0.4.4(rollup@4.24.0)
51 | '@types/node':
52 | specifier: ^22.7.7
53 | version: 22.7.7
54 | babel-plugin-bundled-import-meta:
55 | specifier: ^0.3.2
56 | version: 0.3.2(@babel/core@7.25.8)
57 | babel-plugin-template-html-minifier:
58 | specifier: ^4.1.0
59 | version: 4.1.0
60 | core-js:
61 | specifier: ^3.38.1
62 | version: 3.38.1
63 | prettier:
64 | specifier: ^3.3.3
65 | version: 3.3.3
66 | rollup:
67 | specifier: ^4.24.0
68 | version: 4.24.0
69 | rollup-plugin-copy:
70 | specifier: ^3.5.0
71 | version: 3.5.0
72 | rollup-plugin-html-literals:
73 | specifier: ^1.1.8
74 | version: 1.1.8(rollup@4.24.0)
75 | rollup-plugin-summary:
76 | specifier: ^2.0.1
77 | version: 2.0.1(rollup@4.24.0)
78 | rollup-plugin-visualizer:
79 | specifier: ^5.12.0
80 | version: 5.12.0(rollup@4.24.0)
81 | typescript:
82 | specifier: ^5.6.3
83 | version: 5.6.3
84 | vite:
85 | specifier: ^5.4.9
86 | version: 5.4.9(@types/node@22.7.7)(terser@5.36.0)
87 |
88 | packages:
89 |
90 | '@ampproject/remapping@2.3.0':
91 | resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
92 | engines: {node: '>=6.0.0'}
93 |
94 | '@babel/code-frame@7.25.7':
95 | resolution: {integrity: sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==}
96 | engines: {node: '>=6.9.0'}
97 |
98 | '@babel/compat-data@7.25.8':
99 | resolution: {integrity: sha512-ZsysZyXY4Tlx+Q53XdnOFmqwfB9QDTHYxaZYajWRoBLuLEAwI2UIbtxOjWh/cFaa9IKUlcB+DDuoskLuKu56JA==}
100 | engines: {node: '>=6.9.0'}
101 |
102 | '@babel/core@7.25.8':
103 | resolution: {integrity: sha512-Oixnb+DzmRT30qu9d3tJSQkxuygWm32DFykT4bRoORPa9hZ/L4KhVB/XiRm6KG+roIEM7DBQlmg27kw2HZkdZg==}
104 | engines: {node: '>=6.9.0'}
105 |
106 | '@babel/generator@7.25.7':
107 | resolution: {integrity: sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==}
108 | engines: {node: '>=6.9.0'}
109 |
110 | '@babel/helper-annotate-as-pure@7.25.7':
111 | resolution: {integrity: sha512-4xwU8StnqnlIhhioZf1tqnVWeQ9pvH/ujS8hRfw/WOza+/a+1qv69BWNy+oY231maTCWgKWhfBU7kDpsds6zAA==}
112 | engines: {node: '>=6.9.0'}
113 |
114 | '@babel/helper-builder-binary-assignment-operator-visitor@7.25.7':
115 | resolution: {integrity: sha512-12xfNeKNH7jubQNm7PAkzlLwEmCs1tfuX3UjIw6vP6QXi+leKh6+LyC/+Ed4EIQermwd58wsyh070yjDHFlNGg==}
116 | engines: {node: '>=6.9.0'}
117 |
118 | '@babel/helper-compilation-targets@7.25.7':
119 | resolution: {integrity: sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A==}
120 | engines: {node: '>=6.9.0'}
121 |
122 | '@babel/helper-create-class-features-plugin@7.25.7':
123 | resolution: {integrity: sha512-bD4WQhbkx80mAyj/WCm4ZHcF4rDxkoLFO6ph8/5/mQ3z4vAzltQXAmbc7GvVJx5H+lk5Mi5EmbTeox5nMGCsbw==}
124 | engines: {node: '>=6.9.0'}
125 | peerDependencies:
126 | '@babel/core': ^7.0.0
127 |
128 | '@babel/helper-create-regexp-features-plugin@7.25.7':
129 | resolution: {integrity: sha512-byHhumTj/X47wJ6C6eLpK7wW/WBEcnUeb7D0FNc/jFQnQVw7DOso3Zz5u9x/zLrFVkHa89ZGDbkAa1D54NdrCQ==}
130 | engines: {node: '>=6.9.0'}
131 | peerDependencies:
132 | '@babel/core': ^7.0.0
133 |
134 | '@babel/helper-define-polyfill-provider@0.6.2':
135 | resolution: {integrity: sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==}
136 | peerDependencies:
137 | '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
138 |
139 | '@babel/helper-member-expression-to-functions@7.25.7':
140 | resolution: {integrity: sha512-O31Ssjd5K6lPbTX9AAYpSKrZmLeagt9uwschJd+Ixo6QiRyfpvgtVQp8qrDR9UNFjZ8+DO34ZkdrN+BnPXemeA==}
141 | engines: {node: '>=6.9.0'}
142 |
143 | '@babel/helper-module-imports@7.25.7':
144 | resolution: {integrity: sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw==}
145 | engines: {node: '>=6.9.0'}
146 |
147 | '@babel/helper-module-transforms@7.25.7':
148 | resolution: {integrity: sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ==}
149 | engines: {node: '>=6.9.0'}
150 | peerDependencies:
151 | '@babel/core': ^7.0.0
152 |
153 | '@babel/helper-optimise-call-expression@7.25.7':
154 | resolution: {integrity: sha512-VAwcwuYhv/AT+Vfr28c9y6SHzTan1ryqrydSTFGjU0uDJHw3uZ+PduI8plCLkRsDnqK2DMEDmwrOQRsK/Ykjng==}
155 | engines: {node: '>=6.9.0'}
156 |
157 | '@babel/helper-plugin-utils@7.25.7':
158 | resolution: {integrity: sha512-eaPZai0PiqCi09pPs3pAFfl/zYgGaE6IdXtYvmf0qlcDTd3WCtO7JWCcRd64e0EQrcYgiHibEZnOGsSY4QSgaw==}
159 | engines: {node: '>=6.9.0'}
160 |
161 | '@babel/helper-remap-async-to-generator@7.25.7':
162 | resolution: {integrity: sha512-kRGE89hLnPfcz6fTrlNU+uhgcwv0mBE4Gv3P9Ke9kLVJYpi4AMVVEElXvB5CabrPZW4nCM8P8UyyjrzCM0O2sw==}
163 | engines: {node: '>=6.9.0'}
164 | peerDependencies:
165 | '@babel/core': ^7.0.0
166 |
167 | '@babel/helper-replace-supers@7.25.7':
168 | resolution: {integrity: sha512-iy8JhqlUW9PtZkd4pHM96v6BdJ66Ba9yWSE4z0W4TvSZwLBPkyDsiIU3ENe4SmrzRBs76F7rQXTy1lYC49n6Lw==}
169 | engines: {node: '>=6.9.0'}
170 | peerDependencies:
171 | '@babel/core': ^7.0.0
172 |
173 | '@babel/helper-simple-access@7.25.7':
174 | resolution: {integrity: sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==}
175 | engines: {node: '>=6.9.0'}
176 |
177 | '@babel/helper-skip-transparent-expression-wrappers@7.25.7':
178 | resolution: {integrity: sha512-pPbNbchZBkPMD50K0p3JGcFMNLVUCuU/ABybm/PGNj4JiHrpmNyqqCphBk4i19xXtNV0JhldQJJtbSW5aUvbyA==}
179 | engines: {node: '>=6.9.0'}
180 |
181 | '@babel/helper-string-parser@7.25.7':
182 | resolution: {integrity: sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==}
183 | engines: {node: '>=6.9.0'}
184 |
185 | '@babel/helper-validator-identifier@7.25.7':
186 | resolution: {integrity: sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==}
187 | engines: {node: '>=6.9.0'}
188 |
189 | '@babel/helper-validator-option@7.25.7':
190 | resolution: {integrity: sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ==}
191 | engines: {node: '>=6.9.0'}
192 |
193 | '@babel/helper-wrap-function@7.25.7':
194 | resolution: {integrity: sha512-MA0roW3JF2bD1ptAaJnvcabsVlNQShUaThyJbCDD4bCp8NEgiFvpoqRI2YS22hHlc2thjO/fTg2ShLMC3jygAg==}
195 | engines: {node: '>=6.9.0'}
196 |
197 | '@babel/helpers@7.25.7':
198 | resolution: {integrity: sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA==}
199 | engines: {node: '>=6.9.0'}
200 |
201 | '@babel/highlight@7.25.7':
202 | resolution: {integrity: sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==}
203 | engines: {node: '>=6.9.0'}
204 |
205 | '@babel/parser@7.25.8':
206 | resolution: {integrity: sha512-HcttkxzdPucv3nNFmfOOMfFf64KgdJVqm1KaCm25dPGMLElo9nsLvXeJECQg8UzPuBGLyTSA0ZzqCtDSzKTEoQ==}
207 | engines: {node: '>=6.0.0'}
208 | hasBin: true
209 |
210 | '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.7':
211 | resolution: {integrity: sha512-UV9Lg53zyebzD1DwQoT9mzkEKa922LNUp5YkTJ6Uta0RbyXaQNUgcvSt7qIu1PpPzVb6rd10OVNTzkyBGeVmxQ==}
212 | engines: {node: '>=6.9.0'}
213 | peerDependencies:
214 | '@babel/core': ^7.0.0
215 |
216 | '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.7':
217 | resolution: {integrity: sha512-GDDWeVLNxRIkQTnJn2pDOM1pkCgYdSqPeT1a9vh9yIqu2uzzgw1zcqEb+IJOhy+dTBMlNdThrDIksr2o09qrrQ==}
218 | engines: {node: '>=6.9.0'}
219 | peerDependencies:
220 | '@babel/core': ^7.0.0
221 |
222 | '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.7':
223 | resolution: {integrity: sha512-wxyWg2RYaSUYgmd9MR0FyRGyeOMQE/Uzr1wzd/g5cf5bwi9A4v6HFdDm7y1MgDtod/fLOSTZY6jDgV0xU9d5bA==}
224 | engines: {node: '>=6.9.0'}
225 | peerDependencies:
226 | '@babel/core': ^7.0.0
227 |
228 | '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.7':
229 | resolution: {integrity: sha512-Xwg6tZpLxc4iQjorYsyGMyfJE7nP5MV8t/Ka58BgiA7Jw0fRqQNcANlLfdJ/yvBt9z9LD2We+BEkT7vLqZRWng==}
230 | engines: {node: '>=6.9.0'}
231 | peerDependencies:
232 | '@babel/core': ^7.13.0
233 |
234 | '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.7':
235 | resolution: {integrity: sha512-UVATLMidXrnH+GMUIuxq55nejlj02HP7F5ETyBONzP6G87fPBogG4CH6kxrSrdIuAjdwNO9VzyaYsrZPscWUrw==}
236 | engines: {node: '>=6.9.0'}
237 | peerDependencies:
238 | '@babel/core': ^7.0.0
239 |
240 | '@babel/plugin-proposal-decorators@7.25.7':
241 | resolution: {integrity: sha512-q1mqqqH0e1lhmsEQHV5U8OmdueBC2y0RFr2oUzZoFRtN3MvPmt2fsFRcNQAoGLTSNdHBFUYGnlgcRFhkBbKjPw==}
242 | engines: {node: '>=6.9.0'}
243 | peerDependencies:
244 | '@babel/core': ^7.0.0-0
245 |
246 | '@babel/plugin-proposal-export-default-from@7.25.8':
247 | resolution: {integrity: sha512-5SLPHA/Gk7lNdaymtSVS9jH77Cs7yuHTR3dYj+9q+M7R7tNLXhNuvnmOfafRIzpWL+dtMibuu1I4ofrc768Gkw==}
248 | engines: {node: '>=6.9.0'}
249 | peerDependencies:
250 | '@babel/core': ^7.0.0-0
251 |
252 | '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2':
253 | resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==}
254 | engines: {node: '>=6.9.0'}
255 | peerDependencies:
256 | '@babel/core': ^7.0.0-0
257 |
258 | '@babel/plugin-syntax-decorators@7.25.7':
259 | resolution: {integrity: sha512-oXduHo642ZhstLVYTe2z2GSJIruU0c/W3/Ghr6A5yGMsVrvdnxO1z+3pbTcT7f3/Clnt+1z8D/w1r1f1SHaCHw==}
260 | engines: {node: '>=6.9.0'}
261 | peerDependencies:
262 | '@babel/core': ^7.0.0-0
263 |
264 | '@babel/plugin-syntax-dynamic-import@7.8.3':
265 | resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==}
266 | peerDependencies:
267 | '@babel/core': ^7.0.0-0
268 |
269 | '@babel/plugin-syntax-import-assertions@7.25.7':
270 | resolution: {integrity: sha512-ZvZQRmME0zfJnDQnVBKYzHxXT7lYBB3Revz1GuS7oLXWMgqUPX4G+DDbT30ICClht9WKV34QVrZhSw6WdklwZQ==}
271 | engines: {node: '>=6.9.0'}
272 | peerDependencies:
273 | '@babel/core': ^7.0.0-0
274 |
275 | '@babel/plugin-syntax-import-attributes@7.25.7':
276 | resolution: {integrity: sha512-AqVo+dguCgmpi/3mYBdu9lkngOBlQ2w2vnNpa6gfiCxQZLzV4ZbhsXitJ2Yblkoe1VQwtHSaNmIaGll/26YWRw==}
277 | engines: {node: '>=6.9.0'}
278 | peerDependencies:
279 | '@babel/core': ^7.0.0-0
280 |
281 | '@babel/plugin-syntax-import-meta@7.10.4':
282 | resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==}
283 | peerDependencies:
284 | '@babel/core': ^7.0.0-0
285 |
286 | '@babel/plugin-syntax-unicode-sets-regex@7.18.6':
287 | resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==}
288 | engines: {node: '>=6.9.0'}
289 | peerDependencies:
290 | '@babel/core': ^7.0.0
291 |
292 | '@babel/plugin-transform-arrow-functions@7.25.7':
293 | resolution: {integrity: sha512-EJN2mKxDwfOUCPxMO6MUI58RN3ganiRAG/MS/S3HfB6QFNjroAMelQo/gybyYq97WerCBAZoyrAoW8Tzdq2jWg==}
294 | engines: {node: '>=6.9.0'}
295 | peerDependencies:
296 | '@babel/core': ^7.0.0-0
297 |
298 | '@babel/plugin-transform-async-generator-functions@7.25.8':
299 | resolution: {integrity: sha512-9ypqkozyzpG+HxlH4o4gdctalFGIjjdufzo7I2XPda0iBnZ6a+FO0rIEQcdSPXp02CkvGsII1exJhmROPQd5oA==}
300 | engines: {node: '>=6.9.0'}
301 | peerDependencies:
302 | '@babel/core': ^7.0.0-0
303 |
304 | '@babel/plugin-transform-async-to-generator@7.25.7':
305 | resolution: {integrity: sha512-ZUCjAavsh5CESCmi/xCpX1qcCaAglzs/7tmuvoFnJgA1dM7gQplsguljoTg+Ru8WENpX89cQyAtWoaE0I3X3Pg==}
306 | engines: {node: '>=6.9.0'}
307 | peerDependencies:
308 | '@babel/core': ^7.0.0-0
309 |
310 | '@babel/plugin-transform-block-scoped-functions@7.25.7':
311 | resolution: {integrity: sha512-xHttvIM9fvqW+0a3tZlYcZYSBpSWzGBFIt/sYG3tcdSzBB8ZeVgz2gBP7Df+sM0N1850jrviYSSeUuc+135dmQ==}
312 | engines: {node: '>=6.9.0'}
313 | peerDependencies:
314 | '@babel/core': ^7.0.0-0
315 |
316 | '@babel/plugin-transform-block-scoping@7.25.7':
317 | resolution: {integrity: sha512-ZEPJSkVZaeTFG/m2PARwLZQ+OG0vFIhPlKHK/JdIMy8DbRJ/htz6LRrTFtdzxi9EHmcwbNPAKDnadpNSIW+Aow==}
318 | engines: {node: '>=6.9.0'}
319 | peerDependencies:
320 | '@babel/core': ^7.0.0-0
321 |
322 | '@babel/plugin-transform-class-properties@7.25.7':
323 | resolution: {integrity: sha512-mhyfEW4gufjIqYFo9krXHJ3ElbFLIze5IDp+wQTxoPd+mwFb1NxatNAwmv8Q8Iuxv7Zc+q8EkiMQwc9IhyGf4g==}
324 | engines: {node: '>=6.9.0'}
325 | peerDependencies:
326 | '@babel/core': ^7.0.0-0
327 |
328 | '@babel/plugin-transform-class-static-block@7.25.8':
329 | resolution: {integrity: sha512-e82gl3TCorath6YLf9xUwFehVvjvfqFhdOo4+0iVIVju+6XOi5XHkqB3P2AXnSwoeTX0HBoXq5gJFtvotJzFnQ==}
330 | engines: {node: '>=6.9.0'}
331 | peerDependencies:
332 | '@babel/core': ^7.12.0
333 |
334 | '@babel/plugin-transform-classes@7.25.7':
335 | resolution: {integrity: sha512-9j9rnl+YCQY0IGoeipXvnk3niWicIB6kCsWRGLwX241qSXpbA4MKxtp/EdvFxsc4zI5vqfLxzOd0twIJ7I99zg==}
336 | engines: {node: '>=6.9.0'}
337 | peerDependencies:
338 | '@babel/core': ^7.0.0-0
339 |
340 | '@babel/plugin-transform-computed-properties@7.25.7':
341 | resolution: {integrity: sha512-QIv+imtM+EtNxg/XBKL3hiWjgdLjMOmZ+XzQwSgmBfKbfxUjBzGgVPklUuE55eq5/uVoh8gg3dqlrwR/jw3ZeA==}
342 | engines: {node: '>=6.9.0'}
343 | peerDependencies:
344 | '@babel/core': ^7.0.0-0
345 |
346 | '@babel/plugin-transform-destructuring@7.25.7':
347 | resolution: {integrity: sha512-xKcfLTlJYUczdaM1+epcdh1UGewJqr9zATgrNHcLBcV2QmfvPPEixo/sK/syql9cEmbr7ulu5HMFG5vbbt/sEA==}
348 | engines: {node: '>=6.9.0'}
349 | peerDependencies:
350 | '@babel/core': ^7.0.0-0
351 |
352 | '@babel/plugin-transform-dotall-regex@7.25.7':
353 | resolution: {integrity: sha512-kXzXMMRzAtJdDEgQBLF4oaiT6ZCU3oWHgpARnTKDAqPkDJ+bs3NrZb310YYevR5QlRo3Kn7dzzIdHbZm1VzJdQ==}
354 | engines: {node: '>=6.9.0'}
355 | peerDependencies:
356 | '@babel/core': ^7.0.0-0
357 |
358 | '@babel/plugin-transform-duplicate-keys@7.25.7':
359 | resolution: {integrity: sha512-by+v2CjoL3aMnWDOyCIg+yxU9KXSRa9tN6MbqggH5xvymmr9p4AMjYkNlQy4brMceBnUyHZ9G8RnpvT8wP7Cfg==}
360 | engines: {node: '>=6.9.0'}
361 | peerDependencies:
362 | '@babel/core': ^7.0.0-0
363 |
364 | '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.7':
365 | resolution: {integrity: sha512-HvS6JF66xSS5rNKXLqkk7L9c/jZ/cdIVIcoPVrnl8IsVpLggTjXs8OWekbLHs/VtYDDh5WXnQyeE3PPUGm22MA==}
366 | engines: {node: '>=6.9.0'}
367 | peerDependencies:
368 | '@babel/core': ^7.0.0
369 |
370 | '@babel/plugin-transform-dynamic-import@7.25.8':
371 | resolution: {integrity: sha512-gznWY+mr4ZQL/EWPcbBQUP3BXS5FwZp8RUOw06BaRn8tQLzN4XLIxXejpHN9Qo8x8jjBmAAKp6FoS51AgkSA/A==}
372 | engines: {node: '>=6.9.0'}
373 | peerDependencies:
374 | '@babel/core': ^7.0.0-0
375 |
376 | '@babel/plugin-transform-exponentiation-operator@7.25.7':
377 | resolution: {integrity: sha512-yjqtpstPfZ0h/y40fAXRv2snciYr0OAoMXY/0ClC7tm4C/nG5NJKmIItlaYlLbIVAWNfrYuy9dq1bE0SbX0PEg==}
378 | engines: {node: '>=6.9.0'}
379 | peerDependencies:
380 | '@babel/core': ^7.0.0-0
381 |
382 | '@babel/plugin-transform-export-namespace-from@7.25.8':
383 | resolution: {integrity: sha512-sPtYrduWINTQTW7FtOy99VCTWp4H23UX7vYcut7S4CIMEXU+54zKX9uCoGkLsWXteyaMXzVHgzWbLfQ1w4GZgw==}
384 | engines: {node: '>=6.9.0'}
385 | peerDependencies:
386 | '@babel/core': ^7.0.0-0
387 |
388 | '@babel/plugin-transform-for-of@7.25.7':
389 | resolution: {integrity: sha512-n/TaiBGJxYFWvpJDfsxSj9lEEE44BFM1EPGz4KEiTipTgkoFVVcCmzAL3qA7fdQU96dpo4gGf5HBx/KnDvqiHw==}
390 | engines: {node: '>=6.9.0'}
391 | peerDependencies:
392 | '@babel/core': ^7.0.0-0
393 |
394 | '@babel/plugin-transform-function-name@7.25.7':
395 | resolution: {integrity: sha512-5MCTNcjCMxQ63Tdu9rxyN6cAWurqfrDZ76qvVPrGYdBxIj+EawuuxTu/+dgJlhK5eRz3v1gLwp6XwS8XaX2NiQ==}
396 | engines: {node: '>=6.9.0'}
397 | peerDependencies:
398 | '@babel/core': ^7.0.0-0
399 |
400 | '@babel/plugin-transform-json-strings@7.25.8':
401 | resolution: {integrity: sha512-4OMNv7eHTmJ2YXs3tvxAfa/I43di+VcF+M4Wt66c88EAED1RoGaf1D64cL5FkRpNL+Vx9Hds84lksWvd/wMIdA==}
402 | engines: {node: '>=6.9.0'}
403 | peerDependencies:
404 | '@babel/core': ^7.0.0-0
405 |
406 | '@babel/plugin-transform-literals@7.25.7':
407 | resolution: {integrity: sha512-fwzkLrSu2fESR/cm4t6vqd7ebNIopz2QHGtjoU+dswQo/P6lwAG04Q98lliE3jkz/XqnbGFLnUcE0q0CVUf92w==}
408 | engines: {node: '>=6.9.0'}
409 | peerDependencies:
410 | '@babel/core': ^7.0.0-0
411 |
412 | '@babel/plugin-transform-logical-assignment-operators@7.25.8':
413 | resolution: {integrity: sha512-f5W0AhSbbI+yY6VakT04jmxdxz+WsID0neG7+kQZbCOjuyJNdL5Nn4WIBm4hRpKnUcO9lP0eipUhFN12JpoH8g==}
414 | engines: {node: '>=6.9.0'}
415 | peerDependencies:
416 | '@babel/core': ^7.0.0-0
417 |
418 | '@babel/plugin-transform-member-expression-literals@7.25.7':
419 | resolution: {integrity: sha512-Std3kXwpXfRV0QtQy5JJcRpkqP8/wG4XL7hSKZmGlxPlDqmpXtEPRmhF7ztnlTCtUN3eXRUJp+sBEZjaIBVYaw==}
420 | engines: {node: '>=6.9.0'}
421 | peerDependencies:
422 | '@babel/core': ^7.0.0-0
423 |
424 | '@babel/plugin-transform-modules-amd@7.25.7':
425 | resolution: {integrity: sha512-CgselSGCGzjQvKzghCvDTxKHP3iooenLpJDO842ehn5D2G5fJB222ptnDwQho0WjEvg7zyoxb9P+wiYxiJX5yA==}
426 | engines: {node: '>=6.9.0'}
427 | peerDependencies:
428 | '@babel/core': ^7.0.0-0
429 |
430 | '@babel/plugin-transform-modules-commonjs@7.25.7':
431 | resolution: {integrity: sha512-L9Gcahi0kKFYXvweO6n0wc3ZG1ChpSFdgG+eV1WYZ3/dGbJK7vvk91FgGgak8YwRgrCuihF8tE/Xg07EkL5COg==}
432 | engines: {node: '>=6.9.0'}
433 | peerDependencies:
434 | '@babel/core': ^7.0.0-0
435 |
436 | '@babel/plugin-transform-modules-systemjs@7.25.7':
437 | resolution: {integrity: sha512-t9jZIvBmOXJsiuyOwhrIGs8dVcD6jDyg2icw1VL4A/g+FnWyJKwUfSSU2nwJuMV2Zqui856El9u+ElB+j9fV1g==}
438 | engines: {node: '>=6.9.0'}
439 | peerDependencies:
440 | '@babel/core': ^7.0.0-0
441 |
442 | '@babel/plugin-transform-modules-umd@7.25.7':
443 | resolution: {integrity: sha512-p88Jg6QqsaPh+EB7I9GJrIqi1Zt4ZBHUQtjw3z1bzEXcLh6GfPqzZJ6G+G1HBGKUNukT58MnKG7EN7zXQBCODw==}
444 | engines: {node: '>=6.9.0'}
445 | peerDependencies:
446 | '@babel/core': ^7.0.0-0
447 |
448 | '@babel/plugin-transform-named-capturing-groups-regex@7.25.7':
449 | resolution: {integrity: sha512-BtAT9LzCISKG3Dsdw5uso4oV1+v2NlVXIIomKJgQybotJY3OwCwJmkongjHgwGKoZXd0qG5UZ12JUlDQ07W6Ow==}
450 | engines: {node: '>=6.9.0'}
451 | peerDependencies:
452 | '@babel/core': ^7.0.0
453 |
454 | '@babel/plugin-transform-new-target@7.25.7':
455 | resolution: {integrity: sha512-CfCS2jDsbcZaVYxRFo2qtavW8SpdzmBXC2LOI4oO0rP+JSRDxxF3inF4GcPsLgfb5FjkhXG5/yR/lxuRs2pySA==}
456 | engines: {node: '>=6.9.0'}
457 | peerDependencies:
458 | '@babel/core': ^7.0.0-0
459 |
460 | '@babel/plugin-transform-nullish-coalescing-operator@7.25.8':
461 | resolution: {integrity: sha512-Z7WJJWdQc8yCWgAmjI3hyC+5PXIubH9yRKzkl9ZEG647O9szl9zvmKLzpbItlijBnVhTUf1cpyWBsZ3+2wjWPQ==}
462 | engines: {node: '>=6.9.0'}
463 | peerDependencies:
464 | '@babel/core': ^7.0.0-0
465 |
466 | '@babel/plugin-transform-numeric-separator@7.25.8':
467 | resolution: {integrity: sha512-rm9a5iEFPS4iMIy+/A/PiS0QN0UyjPIeVvbU5EMZFKJZHt8vQnasbpo3T3EFcxzCeYO0BHfc4RqooCZc51J86Q==}
468 | engines: {node: '>=6.9.0'}
469 | peerDependencies:
470 | '@babel/core': ^7.0.0-0
471 |
472 | '@babel/plugin-transform-object-rest-spread@7.25.8':
473 | resolution: {integrity: sha512-LkUu0O2hnUKHKE7/zYOIjByMa4VRaV2CD/cdGz0AxU9we+VA3kDDggKEzI0Oz1IroG+6gUP6UmWEHBMWZU316g==}
474 | engines: {node: '>=6.9.0'}
475 | peerDependencies:
476 | '@babel/core': ^7.0.0-0
477 |
478 | '@babel/plugin-transform-object-super@7.25.7':
479 | resolution: {integrity: sha512-pWT6UXCEW3u1t2tcAGtE15ornCBvopHj9Bps9D2DsH15APgNVOTwwczGckX+WkAvBmuoYKRCFa4DK+jM8vh5AA==}
480 | engines: {node: '>=6.9.0'}
481 | peerDependencies:
482 | '@babel/core': ^7.0.0-0
483 |
484 | '@babel/plugin-transform-optional-catch-binding@7.25.8':
485 | resolution: {integrity: sha512-EbQYweoMAHOn7iJ9GgZo14ghhb9tTjgOc88xFgYngifx7Z9u580cENCV159M4xDh3q/irbhSjZVpuhpC2gKBbg==}
486 | engines: {node: '>=6.9.0'}
487 | peerDependencies:
488 | '@babel/core': ^7.0.0-0
489 |
490 | '@babel/plugin-transform-optional-chaining@7.25.8':
491 | resolution: {integrity: sha512-q05Bk7gXOxpTHoQ8RSzGSh/LHVB9JEIkKnk3myAWwZHnYiTGYtbdrYkIsS8Xyh4ltKf7GNUSgzs/6P2bJtBAQg==}
492 | engines: {node: '>=6.9.0'}
493 | peerDependencies:
494 | '@babel/core': ^7.0.0-0
495 |
496 | '@babel/plugin-transform-parameters@7.25.7':
497 | resolution: {integrity: sha512-FYiTvku63me9+1Nz7TOx4YMtW3tWXzfANZtrzHhUZrz4d47EEtMQhzFoZWESfXuAMMT5mwzD4+y1N8ONAX6lMQ==}
498 | engines: {node: '>=6.9.0'}
499 | peerDependencies:
500 | '@babel/core': ^7.0.0-0
501 |
502 | '@babel/plugin-transform-private-methods@7.25.7':
503 | resolution: {integrity: sha512-KY0hh2FluNxMLwOCHbxVOKfdB5sjWG4M183885FmaqWWiGMhRZq4DQRKH6mHdEucbJnyDyYiZNwNG424RymJjA==}
504 | engines: {node: '>=6.9.0'}
505 | peerDependencies:
506 | '@babel/core': ^7.0.0-0
507 |
508 | '@babel/plugin-transform-private-property-in-object@7.25.8':
509 | resolution: {integrity: sha512-8Uh966svuB4V8RHHg0QJOB32QK287NBksJOByoKmHMp1TAobNniNalIkI2i5IPj5+S9NYCG4VIjbEuiSN8r+ow==}
510 | engines: {node: '>=6.9.0'}
511 | peerDependencies:
512 | '@babel/core': ^7.0.0-0
513 |
514 | '@babel/plugin-transform-property-literals@7.25.7':
515 | resolution: {integrity: sha512-lQEeetGKfFi0wHbt8ClQrUSUMfEeI3MMm74Z73T9/kuz990yYVtfofjf3NuA42Jy3auFOpbjDyCSiIkTs1VIYw==}
516 | engines: {node: '>=6.9.0'}
517 | peerDependencies:
518 | '@babel/core': ^7.0.0-0
519 |
520 | '@babel/plugin-transform-regenerator@7.25.7':
521 | resolution: {integrity: sha512-mgDoQCRjrY3XK95UuV60tZlFCQGXEtMg8H+IsW72ldw1ih1jZhzYXbJvghmAEpg5UVhhnCeia1CkGttUvCkiMQ==}
522 | engines: {node: '>=6.9.0'}
523 | peerDependencies:
524 | '@babel/core': ^7.0.0-0
525 |
526 | '@babel/plugin-transform-reserved-words@7.25.7':
527 | resolution: {integrity: sha512-3OfyfRRqiGeOvIWSagcwUTVk2hXBsr/ww7bLn6TRTuXnexA+Udov2icFOxFX9abaj4l96ooYkcNN1qi2Zvqwng==}
528 | engines: {node: '>=6.9.0'}
529 | peerDependencies:
530 | '@babel/core': ^7.0.0-0
531 |
532 | '@babel/plugin-transform-shorthand-properties@7.25.7':
533 | resolution: {integrity: sha512-uBbxNwimHi5Bv3hUccmOFlUy3ATO6WagTApenHz9KzoIdn0XeACdB12ZJ4cjhuB2WSi80Ez2FWzJnarccriJeA==}
534 | engines: {node: '>=6.9.0'}
535 | peerDependencies:
536 | '@babel/core': ^7.0.0-0
537 |
538 | '@babel/plugin-transform-spread@7.25.7':
539 | resolution: {integrity: sha512-Mm6aeymI0PBh44xNIv/qvo8nmbkpZze1KvR8MkEqbIREDxoiWTi18Zr2jryfRMwDfVZF9foKh060fWgni44luw==}
540 | engines: {node: '>=6.9.0'}
541 | peerDependencies:
542 | '@babel/core': ^7.0.0-0
543 |
544 | '@babel/plugin-transform-sticky-regex@7.25.7':
545 | resolution: {integrity: sha512-ZFAeNkpGuLnAQ/NCsXJ6xik7Id+tHuS+NT+ue/2+rn/31zcdnupCdmunOizEaP0JsUmTFSTOPoQY7PkK2pttXw==}
546 | engines: {node: '>=6.9.0'}
547 | peerDependencies:
548 | '@babel/core': ^7.0.0-0
549 |
550 | '@babel/plugin-transform-template-literals@7.25.7':
551 | resolution: {integrity: sha512-SI274k0nUsFFmyQupiO7+wKATAmMFf8iFgq2O+vVFXZ0SV9lNfT1NGzBEhjquFmD8I9sqHLguH+gZVN3vww2AA==}
552 | engines: {node: '>=6.9.0'}
553 | peerDependencies:
554 | '@babel/core': ^7.0.0-0
555 |
556 | '@babel/plugin-transform-typeof-symbol@7.25.7':
557 | resolution: {integrity: sha512-OmWmQtTHnO8RSUbL0NTdtpbZHeNTnm68Gj5pA4Y2blFNh+V4iZR68V1qL9cI37J21ZN7AaCnkfdHtLExQPf2uA==}
558 | engines: {node: '>=6.9.0'}
559 | peerDependencies:
560 | '@babel/core': ^7.0.0-0
561 |
562 | '@babel/plugin-transform-unicode-escapes@7.25.7':
563 | resolution: {integrity: sha512-BN87D7KpbdiABA+t3HbVqHzKWUDN3dymLaTnPFAMyc8lV+KN3+YzNhVRNdinaCPA4AUqx7ubXbQ9shRjYBl3SQ==}
564 | engines: {node: '>=6.9.0'}
565 | peerDependencies:
566 | '@babel/core': ^7.0.0-0
567 |
568 | '@babel/plugin-transform-unicode-property-regex@7.25.7':
569 | resolution: {integrity: sha512-IWfR89zcEPQGB/iB408uGtSPlQd3Jpq11Im86vUgcmSTcoWAiQMCTOa2K2yNNqFJEBVICKhayctee65Ka8OB0w==}
570 | engines: {node: '>=6.9.0'}
571 | peerDependencies:
572 | '@babel/core': ^7.0.0-0
573 |
574 | '@babel/plugin-transform-unicode-regex@7.25.7':
575 | resolution: {integrity: sha512-8JKfg/hiuA3qXnlLx8qtv5HWRbgyFx2hMMtpDDuU2rTckpKkGu4ycK5yYHwuEa16/quXfoxHBIApEsNyMWnt0g==}
576 | engines: {node: '>=6.9.0'}
577 | peerDependencies:
578 | '@babel/core': ^7.0.0-0
579 |
580 | '@babel/plugin-transform-unicode-sets-regex@7.25.7':
581 | resolution: {integrity: sha512-YRW8o9vzImwmh4Q3Rffd09bH5/hvY0pxg+1H1i0f7APoUeg12G7+HhLj9ZFNIrYkgBXhIijPJ+IXypN0hLTIbw==}
582 | engines: {node: '>=6.9.0'}
583 | peerDependencies:
584 | '@babel/core': ^7.0.0
585 |
586 | '@babel/preset-env@7.25.8':
587 | resolution: {integrity: sha512-58T2yulDHMN8YMUxiLq5YmWUnlDCyY1FsHM+v12VMx+1/FlrUj5tY50iDCpofFQEM8fMYOaY9YRvym2jcjn1Dg==}
588 | engines: {node: '>=6.9.0'}
589 | peerDependencies:
590 | '@babel/core': ^7.0.0-0
591 |
592 | '@babel/preset-modules@0.1.6-no-external-plugins':
593 | resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==}
594 | peerDependencies:
595 | '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0
596 |
597 | '@babel/runtime@7.25.7':
598 | resolution: {integrity: sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==}
599 | engines: {node: '>=6.9.0'}
600 |
601 | '@babel/template@7.25.7':
602 | resolution: {integrity: sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==}
603 | engines: {node: '>=6.9.0'}
604 |
605 | '@babel/traverse@7.25.7':
606 | resolution: {integrity: sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==}
607 | engines: {node: '>=6.9.0'}
608 |
609 | '@babel/types@7.25.8':
610 | resolution: {integrity: sha512-JWtuCu8VQsMladxVz/P4HzHUGCAwpuqacmowgXFs5XjxIgKuNjnLokQzuVjlTvIzODaDmpjT3oxcC48vyk9EWg==}
611 | engines: {node: '>=6.9.0'}
612 |
613 | '@colors/colors@1.5.0':
614 | resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==}
615 | engines: {node: '>=0.1.90'}
616 |
617 | '@conectate/ct-lit@4.0.0':
618 | resolution: {integrity: sha512-6QQd82m6we+Idx/IrdURHS4q+C7blhdks3ZRSR5n8E1fUKcTp35lP0Z6zC/sOS1bwgpF9MsXQWGKRDbZ8udyAw==}
619 |
620 | '@conectate/ct-router@4.0.0':
621 | resolution: {integrity: sha512-3HdRHn8rvhZV0A8CxWuYJ4u6qfqq21L0Wx10wbXYseSCvpdIrb8k8mI9zKzfmyfVIEBDT1dJ36Z9pp/qRp+ZXg==}
622 |
623 | '@esbuild/aix-ppc64@0.21.5':
624 | resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==}
625 | engines: {node: '>=12'}
626 | cpu: [ppc64]
627 | os: [aix]
628 |
629 | '@esbuild/android-arm64@0.21.5':
630 | resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==}
631 | engines: {node: '>=12'}
632 | cpu: [arm64]
633 | os: [android]
634 |
635 | '@esbuild/android-arm@0.21.5':
636 | resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==}
637 | engines: {node: '>=12'}
638 | cpu: [arm]
639 | os: [android]
640 |
641 | '@esbuild/android-x64@0.21.5':
642 | resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==}
643 | engines: {node: '>=12'}
644 | cpu: [x64]
645 | os: [android]
646 |
647 | '@esbuild/darwin-arm64@0.21.5':
648 | resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==}
649 | engines: {node: '>=12'}
650 | cpu: [arm64]
651 | os: [darwin]
652 |
653 | '@esbuild/darwin-x64@0.21.5':
654 | resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==}
655 | engines: {node: '>=12'}
656 | cpu: [x64]
657 | os: [darwin]
658 |
659 | '@esbuild/freebsd-arm64@0.21.5':
660 | resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==}
661 | engines: {node: '>=12'}
662 | cpu: [arm64]
663 | os: [freebsd]
664 |
665 | '@esbuild/freebsd-x64@0.21.5':
666 | resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==}
667 | engines: {node: '>=12'}
668 | cpu: [x64]
669 | os: [freebsd]
670 |
671 | '@esbuild/linux-arm64@0.21.5':
672 | resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==}
673 | engines: {node: '>=12'}
674 | cpu: [arm64]
675 | os: [linux]
676 |
677 | '@esbuild/linux-arm@0.21.5':
678 | resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==}
679 | engines: {node: '>=12'}
680 | cpu: [arm]
681 | os: [linux]
682 |
683 | '@esbuild/linux-ia32@0.21.5':
684 | resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==}
685 | engines: {node: '>=12'}
686 | cpu: [ia32]
687 | os: [linux]
688 |
689 | '@esbuild/linux-loong64@0.21.5':
690 | resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==}
691 | engines: {node: '>=12'}
692 | cpu: [loong64]
693 | os: [linux]
694 |
695 | '@esbuild/linux-mips64el@0.21.5':
696 | resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==}
697 | engines: {node: '>=12'}
698 | cpu: [mips64el]
699 | os: [linux]
700 |
701 | '@esbuild/linux-ppc64@0.21.5':
702 | resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==}
703 | engines: {node: '>=12'}
704 | cpu: [ppc64]
705 | os: [linux]
706 |
707 | '@esbuild/linux-riscv64@0.21.5':
708 | resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==}
709 | engines: {node: '>=12'}
710 | cpu: [riscv64]
711 | os: [linux]
712 |
713 | '@esbuild/linux-s390x@0.21.5':
714 | resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==}
715 | engines: {node: '>=12'}
716 | cpu: [s390x]
717 | os: [linux]
718 |
719 | '@esbuild/linux-x64@0.21.5':
720 | resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==}
721 | engines: {node: '>=12'}
722 | cpu: [x64]
723 | os: [linux]
724 |
725 | '@esbuild/netbsd-x64@0.21.5':
726 | resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==}
727 | engines: {node: '>=12'}
728 | cpu: [x64]
729 | os: [netbsd]
730 |
731 | '@esbuild/openbsd-x64@0.21.5':
732 | resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==}
733 | engines: {node: '>=12'}
734 | cpu: [x64]
735 | os: [openbsd]
736 |
737 | '@esbuild/sunos-x64@0.21.5':
738 | resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==}
739 | engines: {node: '>=12'}
740 | cpu: [x64]
741 | os: [sunos]
742 |
743 | '@esbuild/win32-arm64@0.21.5':
744 | resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==}
745 | engines: {node: '>=12'}
746 | cpu: [arm64]
747 | os: [win32]
748 |
749 | '@esbuild/win32-ia32@0.21.5':
750 | resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==}
751 | engines: {node: '>=12'}
752 | cpu: [ia32]
753 | os: [win32]
754 |
755 | '@esbuild/win32-x64@0.21.5':
756 | resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==}
757 | engines: {node: '>=12'}
758 | cpu: [x64]
759 | os: [win32]
760 |
761 | '@firebase/app-types@0.9.2':
762 | resolution: {integrity: sha512-oMEZ1TDlBz479lmABwWsWjzHwheQKiAgnuKxE0pz0IXCVx7/rtlkx1fQ6GfgK24WCrxDKMplZrT50Kh04iMbXQ==}
763 |
764 | '@jridgewell/gen-mapping@0.3.5':
765 | resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==}
766 | engines: {node: '>=6.0.0'}
767 |
768 | '@jridgewell/resolve-uri@3.1.2':
769 | resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
770 | engines: {node: '>=6.0.0'}
771 |
772 | '@jridgewell/set-array@1.2.1':
773 | resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==}
774 | engines: {node: '>=6.0.0'}
775 |
776 | '@jridgewell/source-map@0.3.6':
777 | resolution: {integrity: sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==}
778 |
779 | '@jridgewell/sourcemap-codec@1.5.0':
780 | resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==}
781 |
782 | '@jridgewell/trace-mapping@0.3.25':
783 | resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==}
784 |
785 | '@lit-labs/ssr-dom-shim@1.2.1':
786 | resolution: {integrity: sha512-wx4aBmgeGvFmOKucFKY+8VFJSYZxs9poN3SDNQFF6lT6NrQUnHiPB2PWz2sc4ieEcAaYYzN+1uWahEeTq2aRIQ==}
787 |
788 | '@lit/reactive-element@2.0.4':
789 | resolution: {integrity: sha512-GFn91inaUa2oHLak8awSIigYz0cU0Payr1rcFsrkf5OJ5eSPxElyZfKh0f2p9FsTiZWXQdWGJeXZICEfXXYSXQ==}
790 |
791 | '@nodelib/fs.scandir@2.1.5':
792 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
793 | engines: {node: '>= 8'}
794 |
795 | '@nodelib/fs.stat@2.0.5':
796 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
797 | engines: {node: '>= 8'}
798 |
799 | '@nodelib/fs.walk@1.2.8':
800 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
801 | engines: {node: '>= 8'}
802 |
803 | '@rollup/plugin-babel@6.0.4':
804 | resolution: {integrity: sha512-YF7Y52kFdFT/xVSuVdjkV5ZdX/3YtmX0QulG+x0taQOtJdHYzVU61aSSkAgVJ7NOv6qPkIYiJSgSWWN/DM5sGw==}
805 | engines: {node: '>=14.0.0'}
806 | peerDependencies:
807 | '@babel/core': ^7.0.0
808 | '@types/babel__core': ^7.1.9
809 | rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
810 | peerDependenciesMeta:
811 | '@types/babel__core':
812 | optional: true
813 | rollup:
814 | optional: true
815 |
816 | '@rollup/plugin-node-resolve@15.3.0':
817 | resolution: {integrity: sha512-9eO5McEICxMzJpDW9OnMYSv4Sta3hmt7VtBFz5zR9273suNOydOyq/FrGeGy+KsTRFm8w0SLVhzig2ILFT63Ag==}
818 | engines: {node: '>=14.0.0'}
819 | peerDependencies:
820 | rollup: ^2.78.0||^3.0.0||^4.0.0
821 | peerDependenciesMeta:
822 | rollup:
823 | optional: true
824 |
825 | '@rollup/plugin-terser@0.4.4':
826 | resolution: {integrity: sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==}
827 | engines: {node: '>=14.0.0'}
828 | peerDependencies:
829 | rollup: ^2.0.0||^3.0.0||^4.0.0
830 | peerDependenciesMeta:
831 | rollup:
832 | optional: true
833 |
834 | '@rollup/pluginutils@5.1.2':
835 | resolution: {integrity: sha512-/FIdS3PyZ39bjZlwqFnWqCOVnW7o963LtKMwQOD0NhQqw22gSr2YY1afu3FxRip4ZCZNsD5jq6Aaz6QV3D/Njw==}
836 | engines: {node: '>=14.0.0'}
837 | peerDependencies:
838 | rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
839 | peerDependenciesMeta:
840 | rollup:
841 | optional: true
842 |
843 | '@rollup/rollup-android-arm-eabi@4.24.0':
844 | resolution: {integrity: sha512-Q6HJd7Y6xdB48x8ZNVDOqsbh2uByBhgK8PiQgPhwkIw/HC/YX5Ghq2mQY5sRMZWHb3VsFkWooUVOZHKr7DmDIA==}
845 | cpu: [arm]
846 | os: [android]
847 |
848 | '@rollup/rollup-android-arm64@4.24.0':
849 | resolution: {integrity: sha512-ijLnS1qFId8xhKjT81uBHuuJp2lU4x2yxa4ctFPtG+MqEE6+C5f/+X/bStmxapgmwLwiL3ih122xv8kVARNAZA==}
850 | cpu: [arm64]
851 | os: [android]
852 |
853 | '@rollup/rollup-darwin-arm64@4.24.0':
854 | resolution: {integrity: sha512-bIv+X9xeSs1XCk6DVvkO+S/z8/2AMt/2lMqdQbMrmVpgFvXlmde9mLcbQpztXm1tajC3raFDqegsH18HQPMYtA==}
855 | cpu: [arm64]
856 | os: [darwin]
857 |
858 | '@rollup/rollup-darwin-x64@4.24.0':
859 | resolution: {integrity: sha512-X6/nOwoFN7RT2svEQWUsW/5C/fYMBe4fnLK9DQk4SX4mgVBiTA9h64kjUYPvGQ0F/9xwJ5U5UfTbl6BEjaQdBQ==}
860 | cpu: [x64]
861 | os: [darwin]
862 |
863 | '@rollup/rollup-linux-arm-gnueabihf@4.24.0':
864 | resolution: {integrity: sha512-0KXvIJQMOImLCVCz9uvvdPgfyWo93aHHp8ui3FrtOP57svqrF/roSSR5pjqL2hcMp0ljeGlU4q9o/rQaAQ3AYA==}
865 | cpu: [arm]
866 | os: [linux]
867 |
868 | '@rollup/rollup-linux-arm-musleabihf@4.24.0':
869 | resolution: {integrity: sha512-it2BW6kKFVh8xk/BnHfakEeoLPv8STIISekpoF+nBgWM4d55CZKc7T4Dx1pEbTnYm/xEKMgy1MNtYuoA8RFIWw==}
870 | cpu: [arm]
871 | os: [linux]
872 |
873 | '@rollup/rollup-linux-arm64-gnu@4.24.0':
874 | resolution: {integrity: sha512-i0xTLXjqap2eRfulFVlSnM5dEbTVque/3Pi4g2y7cxrs7+a9De42z4XxKLYJ7+OhE3IgxvfQM7vQc43bwTgPwA==}
875 | cpu: [arm64]
876 | os: [linux]
877 |
878 | '@rollup/rollup-linux-arm64-musl@4.24.0':
879 | resolution: {integrity: sha512-9E6MKUJhDuDh604Qco5yP/3qn3y7SLXYuiC0Rpr89aMScS2UAmK1wHP2b7KAa1nSjWJc/f/Lc0Wl1L47qjiyQw==}
880 | cpu: [arm64]
881 | os: [linux]
882 |
883 | '@rollup/rollup-linux-powerpc64le-gnu@4.24.0':
884 | resolution: {integrity: sha512-2XFFPJ2XMEiF5Zi2EBf4h73oR1V/lycirxZxHZNc93SqDN/IWhYYSYj8I9381ikUFXZrz2v7r2tOVk2NBwxrWw==}
885 | cpu: [ppc64]
886 | os: [linux]
887 |
888 | '@rollup/rollup-linux-riscv64-gnu@4.24.0':
889 | resolution: {integrity: sha512-M3Dg4hlwuntUCdzU7KjYqbbd+BLq3JMAOhCKdBE3TcMGMZbKkDdJ5ivNdehOssMCIokNHFOsv7DO4rlEOfyKpg==}
890 | cpu: [riscv64]
891 | os: [linux]
892 |
893 | '@rollup/rollup-linux-s390x-gnu@4.24.0':
894 | resolution: {integrity: sha512-mjBaoo4ocxJppTorZVKWFpy1bfFj9FeCMJqzlMQGjpNPY9JwQi7OuS1axzNIk0nMX6jSgy6ZURDZ2w0QW6D56g==}
895 | cpu: [s390x]
896 | os: [linux]
897 |
898 | '@rollup/rollup-linux-x64-gnu@4.24.0':
899 | resolution: {integrity: sha512-ZXFk7M72R0YYFN5q13niV0B7G8/5dcQ9JDp8keJSfr3GoZeXEoMHP/HlvqROA3OMbMdfr19IjCeNAnPUG93b6A==}
900 | cpu: [x64]
901 | os: [linux]
902 |
903 | '@rollup/rollup-linux-x64-musl@4.24.0':
904 | resolution: {integrity: sha512-w1i+L7kAXZNdYl+vFvzSZy8Y1arS7vMgIy8wusXJzRrPyof5LAb02KGr1PD2EkRcl73kHulIID0M501lN+vobQ==}
905 | cpu: [x64]
906 | os: [linux]
907 |
908 | '@rollup/rollup-win32-arm64-msvc@4.24.0':
909 | resolution: {integrity: sha512-VXBrnPWgBpVDCVY6XF3LEW0pOU51KbaHhccHw6AS6vBWIC60eqsH19DAeeObl+g8nKAz04QFdl/Cefta0xQtUQ==}
910 | cpu: [arm64]
911 | os: [win32]
912 |
913 | '@rollup/rollup-win32-ia32-msvc@4.24.0':
914 | resolution: {integrity: sha512-xrNcGDU0OxVcPTH/8n/ShH4UevZxKIO6HJFK0e15XItZP2UcaiLFd5kiX7hJnqCbSztUF8Qot+JWBC/QXRPYWQ==}
915 | cpu: [ia32]
916 | os: [win32]
917 |
918 | '@rollup/rollup-win32-x64-msvc@4.24.0':
919 | resolution: {integrity: sha512-fbMkAF7fufku0N2dE5TBXcNlg0pt0cJue4xBRE2Qc5Vqikxr4VCgKj/ht6SMdFcOacVA9rqF70APJ8RN/4vMJw==}
920 | cpu: [x64]
921 | os: [win32]
922 |
923 | '@types/clean-css@4.2.11':
924 | resolution: {integrity: sha512-Y8n81lQVTAfP2TOdtJJEsCoYl1AnOkqDqMvXb9/7pfgZZ7r8YrEyurrAvAoAjHOGXKRybay+5CsExqIH6liccw==}
925 |
926 | '@types/estree@1.0.6':
927 | resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==}
928 |
929 | '@types/fs-extra@8.1.5':
930 | resolution: {integrity: sha512-0dzKcwO+S8s2kuF5Z9oUWatQJj5Uq/iqphEtE3GQJVRRYm/tD1LglU2UnXi2A8jLq5umkGouOXOR9y0n613ZwQ==}
931 |
932 | '@types/glob@7.2.0':
933 | resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==}
934 |
935 | '@types/html-minifier@3.5.3':
936 | resolution: {integrity: sha512-j1P/4PcWVVCPEy5lofcHnQ6BtXz9tHGiFPWzqm7TtGuWZEfCHEP446HlkSNc9fQgNJaJZ6ewPtp2aaFla/Uerg==}
937 |
938 | '@types/minimatch@5.1.2':
939 | resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==}
940 |
941 | '@types/node@22.7.7':
942 | resolution: {integrity: sha512-SRxCrrg9CL/y54aiMCG3edPKdprgMVGDXjA3gB8UmmBW5TcXzRUYAh8EWzTnSJFAd1rgImPELza+A3bJ+qxz8Q==}
943 |
944 | '@types/relateurl@0.2.33':
945 | resolution: {integrity: sha512-bTQCKsVbIdzLqZhLkF5fcJQreE4y1ro4DIyVrlDNSCJRRwHhB8Z+4zXXa8jN6eDvc2HbRsEYgbvrnGvi54EpSw==}
946 |
947 | '@types/resolve@1.20.2':
948 | resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==}
949 |
950 | '@types/trusted-types@2.0.7':
951 | resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==}
952 |
953 | '@types/uglify-js@3.17.5':
954 | resolution: {integrity: sha512-TU+fZFBTBcXj/GpDpDaBmgWk/gn96kMZ+uocaFUlV2f8a6WdMzzI44QBCmGcCiYR0Y6ZlNRiyUyKKt5nl/lbzQ==}
955 |
956 | acorn@8.13.0:
957 | resolution: {integrity: sha512-8zSiw54Oxrdym50NlZ9sUusyO1Z1ZchgRLWRaK6c86XJFClyCgFKetdowBg5bKxyp/u+CDBJG4Mpp0m3HLZl9w==}
958 | engines: {node: '>=0.4.0'}
959 | hasBin: true
960 |
961 | ansi-regex@5.0.1:
962 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
963 | engines: {node: '>=8'}
964 |
965 | ansi-styles@3.2.1:
966 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
967 | engines: {node: '>=4'}
968 |
969 | ansi-styles@4.3.0:
970 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
971 | engines: {node: '>=8'}
972 |
973 | array-union@2.1.0:
974 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
975 | engines: {node: '>=8'}
976 |
977 | babel-plugin-bundled-import-meta@0.3.2:
978 | resolution: {integrity: sha512-RMXzsnWoFHDSUc1X/QiejEwQBtQ0Y68HQZ542JQ4voFa5Sgl5f/D4T7+EOocUeSbiT4XIDbrhfxbH5OmcV8Ibw==}
979 | engines: {node: '>=8'}
980 | peerDependencies:
981 | '@babel/core': ^7.7.0
982 |
983 | babel-plugin-polyfill-corejs2@0.4.11:
984 | resolution: {integrity: sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==}
985 | peerDependencies:
986 | '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
987 |
988 | babel-plugin-polyfill-corejs3@0.10.6:
989 | resolution: {integrity: sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==}
990 | peerDependencies:
991 | '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
992 |
993 | babel-plugin-polyfill-regenerator@0.6.2:
994 | resolution: {integrity: sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg==}
995 | peerDependencies:
996 | '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
997 |
998 | babel-plugin-template-html-minifier@4.1.0:
999 | resolution: {integrity: sha512-fyuqn/SEPG68v+YUrBehOhQ81fxlu1A3YPATo3XXTNTsYsUFejRNNFTdQk5vkramMYy7/9XKIXIwsnB0VVvVTg==}
1000 | engines: {node: '>=10.13.0'}
1001 |
1002 | balanced-match@1.0.2:
1003 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
1004 |
1005 | brace-expansion@1.1.11:
1006 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
1007 |
1008 | braces@3.0.3:
1009 | resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
1010 | engines: {node: '>=8'}
1011 |
1012 | brotli-size@4.0.0:
1013 | resolution: {integrity: sha512-uA9fOtlTRC0iqKfzff1W34DXUA3GyVqbUaeo3Rw3d4gd1eavKVCETXrn3NzO74W+UVkG3UHu8WxUi+XvKI/huA==}
1014 | engines: {node: '>= 10.16.0'}
1015 |
1016 | browserslist@4.24.0:
1017 | resolution: {integrity: sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==}
1018 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
1019 | hasBin: true
1020 |
1021 | buffer-from@1.1.2:
1022 | resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
1023 |
1024 | builtin-modules@3.3.0:
1025 | resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==}
1026 | engines: {node: '>=6'}
1027 |
1028 | camel-case@3.0.0:
1029 | resolution: {integrity: sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w==}
1030 |
1031 | camel-case@4.1.2:
1032 | resolution: {integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==}
1033 |
1034 | caniuse-lite@1.0.30001669:
1035 | resolution: {integrity: sha512-DlWzFDJqstqtIVx1zeSpIMLjunf5SmwOw0N2Ck/QSQdS8PLS4+9HrLaYei4w8BIAL7IB/UEDu889d8vhCTPA0w==}
1036 |
1037 | chalk@2.4.2:
1038 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
1039 | engines: {node: '>=4'}
1040 |
1041 | clean-css@4.2.4:
1042 | resolution: {integrity: sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==}
1043 | engines: {node: '>= 4.0'}
1044 |
1045 | cli-table3@0.6.5:
1046 | resolution: {integrity: sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ==}
1047 | engines: {node: 10.* || >= 12.*}
1048 |
1049 | cliui@8.0.1:
1050 | resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
1051 | engines: {node: '>=12'}
1052 |
1053 | color-convert@1.9.3:
1054 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
1055 |
1056 | color-convert@2.0.1:
1057 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
1058 | engines: {node: '>=7.0.0'}
1059 |
1060 | color-name@1.1.3:
1061 | resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
1062 |
1063 | color-name@1.1.4:
1064 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
1065 |
1066 | colorette@1.4.0:
1067 | resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==}
1068 |
1069 | commander@2.20.3:
1070 | resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
1071 |
1072 | commander@4.1.1:
1073 | resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==}
1074 | engines: {node: '>= 6'}
1075 |
1076 | concat-map@0.0.1:
1077 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
1078 |
1079 | convert-source-map@2.0.0:
1080 | resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
1081 |
1082 | core-js-compat@3.38.1:
1083 | resolution: {integrity: sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==}
1084 |
1085 | core-js@3.38.1:
1086 | resolution: {integrity: sha512-OP35aUorbU3Zvlx7pjsFdu1rGNnD4pgw/CWoYzRY3t2EzoVT7shKHY1dlAy3f41cGIO7ZDPQimhGFTlEYkG/Hw==}
1087 |
1088 | debug@4.3.7:
1089 | resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==}
1090 | engines: {node: '>=6.0'}
1091 | peerDependencies:
1092 | supports-color: '*'
1093 | peerDependenciesMeta:
1094 | supports-color:
1095 | optional: true
1096 |
1097 | deepmerge@4.3.1:
1098 | resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==}
1099 | engines: {node: '>=0.10.0'}
1100 |
1101 | define-lazy-prop@2.0.0:
1102 | resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==}
1103 | engines: {node: '>=8'}
1104 |
1105 | dir-glob@3.0.1:
1106 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
1107 | engines: {node: '>=8'}
1108 |
1109 | dot-case@3.0.4:
1110 | resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==}
1111 |
1112 | duplexer@0.1.1:
1113 | resolution: {integrity: sha512-sxNZ+ljy+RA1maXoUReeqBBpBC6RLKmg5ewzV+x+mSETmWNoKdZN6vcQjpFROemza23hGFskJtFNoUWUaQ+R4Q==}
1114 |
1115 | duplexer@0.1.2:
1116 | resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==}
1117 |
1118 | electron-to-chromium@1.5.41:
1119 | resolution: {integrity: sha512-dfdv/2xNjX0P8Vzme4cfzHqnPm5xsZXwsolTYr0eyW18IUmNyG08vL+fttvinTfhKfIKdRoqkDIC9e9iWQCNYQ==}
1120 |
1121 | emoji-regex@8.0.0:
1122 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
1123 |
1124 | esbuild@0.21.5:
1125 | resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==}
1126 | engines: {node: '>=12'}
1127 | hasBin: true
1128 |
1129 | escalade@3.2.0:
1130 | resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
1131 | engines: {node: '>=6'}
1132 |
1133 | escape-string-regexp@1.0.5:
1134 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
1135 | engines: {node: '>=0.8.0'}
1136 |
1137 | estree-walker@2.0.2:
1138 | resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
1139 |
1140 | esutils@2.0.3:
1141 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
1142 | engines: {node: '>=0.10.0'}
1143 |
1144 | fast-glob@3.3.2:
1145 | resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==}
1146 | engines: {node: '>=8.6.0'}
1147 |
1148 | fastq@1.17.1:
1149 | resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==}
1150 |
1151 | filesize@10.1.6:
1152 | resolution: {integrity: sha512-sJslQKU2uM33qH5nqewAwVB2QgR6w1aMNsYUp3aN5rMRyXEwJGmZvaWzeJFNTOXWlHQyBFCWrdj3fV/fsTOX8w==}
1153 | engines: {node: '>= 10.4.0'}
1154 |
1155 | fill-range@7.1.1:
1156 | resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
1157 | engines: {node: '>=8'}
1158 |
1159 | fs-extra@8.1.0:
1160 | resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==}
1161 | engines: {node: '>=6 <7 || >=8'}
1162 |
1163 | fs.realpath@1.0.0:
1164 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
1165 |
1166 | fsevents@2.3.3:
1167 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
1168 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
1169 | os: [darwin]
1170 |
1171 | function-bind@1.1.2:
1172 | resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
1173 |
1174 | gensync@1.0.0-beta.2:
1175 | resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
1176 | engines: {node: '>=6.9.0'}
1177 |
1178 | get-caller-file@2.0.5:
1179 | resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
1180 | engines: {node: 6.* || 8.* || >= 10.*}
1181 |
1182 | glob-parent@5.1.2:
1183 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
1184 | engines: {node: '>= 6'}
1185 |
1186 | glob@7.2.3:
1187 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
1188 | deprecated: Glob versions prior to v9 are no longer supported
1189 |
1190 | globals@11.12.0:
1191 | resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==}
1192 | engines: {node: '>=4'}
1193 |
1194 | globby@10.0.1:
1195 | resolution: {integrity: sha512-sSs4inE1FB2YQiymcmTv6NWENryABjUNPeWhOvmn4SjtKybglsyPZxFB3U1/+L1bYi0rNZDqCLlHyLYDl1Pq5A==}
1196 | engines: {node: '>=8'}
1197 |
1198 | graceful-fs@4.2.11:
1199 | resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
1200 |
1201 | gzip-size@7.0.0:
1202 | resolution: {integrity: sha512-O1Ld7Dr+nqPnmGpdhzLmMTQ4vAsD+rHwMm1NLUmoUFFymBOMKxCCrtDxqdBRYXdeEPEi3SyoR4TizJLQrnKBNA==}
1203 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
1204 |
1205 | has-flag@3.0.0:
1206 | resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
1207 | engines: {node: '>=4'}
1208 |
1209 | hasown@2.0.2:
1210 | resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
1211 | engines: {node: '>= 0.4'}
1212 |
1213 | he@1.2.0:
1214 | resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
1215 | hasBin: true
1216 |
1217 | html-minifier-terser@5.1.1:
1218 | resolution: {integrity: sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==}
1219 | engines: {node: '>=6'}
1220 | hasBin: true
1221 |
1222 | html-minifier@4.0.0:
1223 | resolution: {integrity: sha512-aoGxanpFPLg7MkIl/DDFYtb0iWz7jMFGqFhvEDZga6/4QTjneiD8I/NXL1x5aaoCp7FSIT6h/OhykDdPsbtMig==}
1224 | engines: {node: '>=6'}
1225 | hasBin: true
1226 |
1227 | ignore@5.3.2:
1228 | resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==}
1229 | engines: {node: '>= 4'}
1230 |
1231 | inflight@1.0.6:
1232 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
1233 | deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
1234 |
1235 | inherits@2.0.4:
1236 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
1237 |
1238 | is-builtin-module@3.2.1:
1239 | resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==}
1240 | engines: {node: '>=6'}
1241 |
1242 | is-core-module@2.15.1:
1243 | resolution: {integrity: sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==}
1244 | engines: {node: '>= 0.4'}
1245 |
1246 | is-docker@2.2.1:
1247 | resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==}
1248 | engines: {node: '>=8'}
1249 | hasBin: true
1250 |
1251 | is-extglob@2.1.1:
1252 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
1253 | engines: {node: '>=0.10.0'}
1254 |
1255 | is-fullwidth-code-point@3.0.0:
1256 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
1257 | engines: {node: '>=8'}
1258 |
1259 | is-glob@4.0.3:
1260 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
1261 | engines: {node: '>=0.10.0'}
1262 |
1263 | is-module@1.0.0:
1264 | resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==}
1265 |
1266 | is-number@7.0.0:
1267 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
1268 | engines: {node: '>=0.12.0'}
1269 |
1270 | is-plain-object@3.0.1:
1271 | resolution: {integrity: sha512-Xnpx182SBMrr/aBik8y+GuR4U1L9FqMSojwDQwPMmxyC6bvEqly9UBCxhauBF5vNh2gwWJNX6oDV7O+OM4z34g==}
1272 | engines: {node: '>=0.10.0'}
1273 |
1274 | is-wsl@2.2.0:
1275 | resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==}
1276 | engines: {node: '>=8'}
1277 |
1278 | js-tokens@4.0.0:
1279 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
1280 |
1281 | jsesc@3.0.2:
1282 | resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==}
1283 | engines: {node: '>=6'}
1284 | hasBin: true
1285 |
1286 | json5@2.2.3:
1287 | resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
1288 | engines: {node: '>=6'}
1289 | hasBin: true
1290 |
1291 | jsonfile@4.0.0:
1292 | resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==}
1293 |
1294 | lit-element@4.1.1:
1295 | resolution: {integrity: sha512-HO9Tkkh34QkTeUmEdNYhMT8hzLid7YlMlATSi1q4q17HE5d9mrrEHJ/o8O2D0cMi182zK1F3v7x0PWFjrhXFew==}
1296 |
1297 | lit-html@3.2.1:
1298 | resolution: {integrity: sha512-qI/3lziaPMSKsrwlxH/xMgikhQ0EGOX2ICU73Bi/YHFvz2j/yMCIrw4+puF2IpQ4+upd3EWbvnHM9+PnJn48YA==}
1299 |
1300 | lit@3.2.1:
1301 | resolution: {integrity: sha512-1BBa1E/z0O9ye5fZprPtdqnc0BFzxIxTTOO/tQFmyC/hj1O3jL4TfmLBw0WEwjAokdLwpclkvGgDJwTIh0/22w==}
1302 |
1303 | lodash.debounce@4.0.8:
1304 | resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==}
1305 |
1306 | lower-case@1.1.4:
1307 | resolution: {integrity: sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==}
1308 |
1309 | lower-case@2.0.2:
1310 | resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==}
1311 |
1312 | lru-cache@5.1.1:
1313 | resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
1314 |
1315 | magic-string@0.25.9:
1316 | resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==}
1317 |
1318 | merge2@1.4.1:
1319 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
1320 | engines: {node: '>= 8'}
1321 |
1322 | micromatch@4.0.8:
1323 | resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
1324 | engines: {node: '>=8.6'}
1325 |
1326 | minify-html-literals@1.3.5:
1327 | resolution: {integrity: sha512-p8T8ryePRR8FVfJZLVFmM53WY25FL0moCCTycUDuAu6rf9GMLwy0gNjXBGNin3Yun7Y+tIWd28axOf0t2EpAlQ==}
1328 |
1329 | minimatch@3.1.2:
1330 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
1331 |
1332 | ms@2.1.3:
1333 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
1334 |
1335 | nanoid@3.3.7:
1336 | resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==}
1337 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
1338 | hasBin: true
1339 |
1340 | no-case@2.3.2:
1341 | resolution: {integrity: sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==}
1342 |
1343 | no-case@3.0.4:
1344 | resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==}
1345 |
1346 | node-releases@2.0.18:
1347 | resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==}
1348 |
1349 | once@1.4.0:
1350 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
1351 |
1352 | open@8.4.2:
1353 | resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==}
1354 | engines: {node: '>=12'}
1355 |
1356 | param-case@2.1.1:
1357 | resolution: {integrity: sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w==}
1358 |
1359 | param-case@3.0.4:
1360 | resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==}
1361 |
1362 | parse-literals@1.2.1:
1363 | resolution: {integrity: sha512-Ml0w104Ph2wwzuRdxrg9booVWsngXbB4bZ5T2z6WyF8b5oaNkUmBiDtahi34yUIpXD8Y13JjAK6UyIyApJ73RQ==}
1364 |
1365 | pascal-case@3.1.2:
1366 | resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==}
1367 |
1368 | path-is-absolute@1.0.1:
1369 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
1370 | engines: {node: '>=0.10.0'}
1371 |
1372 | path-parse@1.0.7:
1373 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
1374 |
1375 | path-type@4.0.0:
1376 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
1377 | engines: {node: '>=8'}
1378 |
1379 | picocolors@1.1.1:
1380 | resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
1381 |
1382 | picomatch@2.3.1:
1383 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
1384 | engines: {node: '>=8.6'}
1385 |
1386 | postcss@8.4.47:
1387 | resolution: {integrity: sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==}
1388 | engines: {node: ^10 || ^12 || >=14}
1389 |
1390 | prettier@3.3.3:
1391 | resolution: {integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==}
1392 | engines: {node: '>=14'}
1393 | hasBin: true
1394 |
1395 | pwa-helpers@0.9.1:
1396 | resolution: {integrity: sha512-4sP/C9sSxQ3w80AATmvCEI3R+MHzCwr2RSZEbLyMkeJgV3cRk7ySZRUrQnBDSA7A0/z6dkYtjuXlkhN1ZFw3iA==}
1397 |
1398 | queue-microtask@1.2.3:
1399 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
1400 |
1401 | randombytes@2.1.0:
1402 | resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
1403 |
1404 | regenerate-unicode-properties@10.2.0:
1405 | resolution: {integrity: sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==}
1406 | engines: {node: '>=4'}
1407 |
1408 | regenerate@1.4.2:
1409 | resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==}
1410 |
1411 | regenerator-runtime@0.14.1:
1412 | resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==}
1413 |
1414 | regenerator-transform@0.15.2:
1415 | resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==}
1416 |
1417 | regexpu-core@6.1.1:
1418 | resolution: {integrity: sha512-k67Nb9jvwJcJmVpw0jPttR1/zVfnKf8Km0IPatrU/zJ5XeG3+Slx0xLXs9HByJSzXzrlz5EDvN6yLNMDc2qdnw==}
1419 | engines: {node: '>=4'}
1420 |
1421 | regjsgen@0.8.0:
1422 | resolution: {integrity: sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==}
1423 |
1424 | regjsparser@0.11.1:
1425 | resolution: {integrity: sha512-1DHODs4B8p/mQHU9kr+jv8+wIC9mtG4eBHxWxIq5mhjE3D5oORhCc6deRKzTjs9DcfRFmj9BHSDguZklqCGFWQ==}
1426 | hasBin: true
1427 |
1428 | relateurl@0.2.7:
1429 | resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==}
1430 | engines: {node: '>= 0.10'}
1431 |
1432 | require-directory@2.1.1:
1433 | resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
1434 | engines: {node: '>=0.10.0'}
1435 |
1436 | resolve@1.22.8:
1437 | resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==}
1438 | hasBin: true
1439 |
1440 | reusify@1.0.4:
1441 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
1442 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
1443 |
1444 | rollup-plugin-copy@3.5.0:
1445 | resolution: {integrity: sha512-wI8D5dvYovRMx/YYKtUNt3Yxaw4ORC9xo6Gt9t22kveWz1enG9QrhVlagzwrxSC455xD1dHMKhIJkbsQ7d48BA==}
1446 | engines: {node: '>=8.3'}
1447 |
1448 | rollup-plugin-html-literals@1.1.8:
1449 | resolution: {integrity: sha512-M9KmEalEVWJ6Rk55hwmAmTdKibdvrY7LbmGLiJg+hLPUS2W1xEKgTrkucyvOov+SgE7SM37qEd4Uc5sjs3nWuQ==}
1450 | engines: {node: '>=16'}
1451 | peerDependencies:
1452 | rollup: ^1.x.x||^2.x.x||^3.x.x||^4.x.x
1453 |
1454 | rollup-plugin-summary@2.0.1:
1455 | resolution: {integrity: sha512-aO8t5ZxAB9svdUl4etKUbWr7FFK/2RLj81ZiHnsJKsXPcZEekh32+TknJFj/V8JYRqjmlb/Ygi4aktRa9LdQjw==}
1456 | engines: {node: '>=14.0.0'}
1457 | peerDependencies:
1458 | rollup: ^2.68.0||^3.0.0||^4.0.0
1459 |
1460 | rollup-plugin-visualizer@5.12.0:
1461 | resolution: {integrity: sha512-8/NU9jXcHRs7Nnj07PF2o4gjxmm9lXIrZ8r175bT9dK8qoLlvKTwRMArRCMgpMGlq8CTLugRvEmyMeMXIU2pNQ==}
1462 | engines: {node: '>=14'}
1463 | hasBin: true
1464 | peerDependencies:
1465 | rollup: 2.x || 3.x || 4.x
1466 | peerDependenciesMeta:
1467 | rollup:
1468 | optional: true
1469 |
1470 | rollup@4.24.0:
1471 | resolution: {integrity: sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==}
1472 | engines: {node: '>=18.0.0', npm: '>=8.0.0'}
1473 | hasBin: true
1474 |
1475 | run-parallel@1.2.0:
1476 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
1477 |
1478 | safe-buffer@5.2.1:
1479 | resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
1480 |
1481 | semver@6.3.1:
1482 | resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
1483 | hasBin: true
1484 |
1485 | serialize-javascript@6.0.2:
1486 | resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==}
1487 |
1488 | slash@3.0.0:
1489 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
1490 | engines: {node: '>=8'}
1491 |
1492 | smob@1.5.0:
1493 | resolution: {integrity: sha512-g6T+p7QO8npa+/hNx9ohv1E5pVCmWrVCUzUXJyLdMmftX6ER0oiWY/w9knEonLpnOp6b6FenKnMfR8gqwWdwig==}
1494 |
1495 | source-map-js@1.2.1:
1496 | resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
1497 | engines: {node: '>=0.10.0'}
1498 |
1499 | source-map-support@0.5.21:
1500 | resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==}
1501 |
1502 | source-map@0.6.1:
1503 | resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
1504 | engines: {node: '>=0.10.0'}
1505 |
1506 | source-map@0.7.4:
1507 | resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==}
1508 | engines: {node: '>= 8'}
1509 |
1510 | sourcemap-codec@1.4.8:
1511 | resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==}
1512 | deprecated: Please use @jridgewell/sourcemap-codec instead
1513 |
1514 | string-width@4.2.3:
1515 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
1516 | engines: {node: '>=8'}
1517 |
1518 | strip-ansi@6.0.1:
1519 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
1520 | engines: {node: '>=8'}
1521 |
1522 | supports-color@5.5.0:
1523 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
1524 | engines: {node: '>=4'}
1525 |
1526 | supports-preserve-symlinks-flag@1.0.0:
1527 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
1528 | engines: {node: '>= 0.4'}
1529 |
1530 | terser@4.8.1:
1531 | resolution: {integrity: sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==}
1532 | engines: {node: '>=6.0.0'}
1533 | hasBin: true
1534 |
1535 | terser@5.36.0:
1536 | resolution: {integrity: sha512-IYV9eNMuFAV4THUspIRXkLakHnV6XO7FEdtKjf/mDyrnqUg9LnlOn6/RwRvM9SZjR4GUq8Nk8zj67FzVARr74w==}
1537 | engines: {node: '>=10'}
1538 | hasBin: true
1539 |
1540 | to-fast-properties@2.0.0:
1541 | resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
1542 | engines: {node: '>=4'}
1543 |
1544 | to-regex-range@5.0.1:
1545 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
1546 | engines: {node: '>=8.0'}
1547 |
1548 | tslib@2.8.0:
1549 | resolution: {integrity: sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==}
1550 |
1551 | typescript@4.9.5:
1552 | resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==}
1553 | engines: {node: '>=4.2.0'}
1554 | hasBin: true
1555 |
1556 | typescript@5.6.3:
1557 | resolution: {integrity: sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==}
1558 | engines: {node: '>=14.17'}
1559 | hasBin: true
1560 |
1561 | uglify-js@3.19.3:
1562 | resolution: {integrity: sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==}
1563 | engines: {node: '>=0.8.0'}
1564 | hasBin: true
1565 |
1566 | undici-types@6.19.8:
1567 | resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==}
1568 |
1569 | unicode-canonical-property-names-ecmascript@2.0.1:
1570 | resolution: {integrity: sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==}
1571 | engines: {node: '>=4'}
1572 |
1573 | unicode-match-property-ecmascript@2.0.0:
1574 | resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==}
1575 | engines: {node: '>=4'}
1576 |
1577 | unicode-match-property-value-ecmascript@2.2.0:
1578 | resolution: {integrity: sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg==}
1579 | engines: {node: '>=4'}
1580 |
1581 | unicode-property-aliases-ecmascript@2.1.0:
1582 | resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==}
1583 | engines: {node: '>=4'}
1584 |
1585 | universalify@0.1.2:
1586 | resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==}
1587 | engines: {node: '>= 4.0.0'}
1588 |
1589 | update-browserslist-db@1.1.1:
1590 | resolution: {integrity: sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==}
1591 | hasBin: true
1592 | peerDependencies:
1593 | browserslist: '>= 4.21.0'
1594 |
1595 | upper-case@1.1.3:
1596 | resolution: {integrity: sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==}
1597 |
1598 | vite@5.4.9:
1599 | resolution: {integrity: sha512-20OVpJHh0PAM0oSOELa5GaZNWeDjcAvQjGXy2Uyr+Tp+/D2/Hdz6NLgpJLsarPTA2QJ6v8mX2P1ZfbsSKvdMkg==}
1600 | engines: {node: ^18.0.0 || >=20.0.0}
1601 | hasBin: true
1602 | peerDependencies:
1603 | '@types/node': ^18.0.0 || >=20.0.0
1604 | less: '*'
1605 | lightningcss: ^1.21.0
1606 | sass: '*'
1607 | sass-embedded: '*'
1608 | stylus: '*'
1609 | sugarss: '*'
1610 | terser: ^5.4.0
1611 | peerDependenciesMeta:
1612 | '@types/node':
1613 | optional: true
1614 | less:
1615 | optional: true
1616 | lightningcss:
1617 | optional: true
1618 | sass:
1619 | optional: true
1620 | sass-embedded:
1621 | optional: true
1622 | stylus:
1623 | optional: true
1624 | sugarss:
1625 | optional: true
1626 | terser:
1627 | optional: true
1628 |
1629 | wrap-ansi@7.0.0:
1630 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
1631 | engines: {node: '>=10'}
1632 |
1633 | wrappy@1.0.2:
1634 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
1635 |
1636 | y18n@5.0.8:
1637 | resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
1638 | engines: {node: '>=10'}
1639 |
1640 | yallist@3.1.1:
1641 | resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
1642 |
1643 | yargs-parser@21.1.1:
1644 | resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
1645 | engines: {node: '>=12'}
1646 |
1647 | yargs@17.7.2:
1648 | resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
1649 | engines: {node: '>=12'}
1650 |
1651 | snapshots:
1652 |
1653 | '@ampproject/remapping@2.3.0':
1654 | dependencies:
1655 | '@jridgewell/gen-mapping': 0.3.5
1656 | '@jridgewell/trace-mapping': 0.3.25
1657 |
1658 | '@babel/code-frame@7.25.7':
1659 | dependencies:
1660 | '@babel/highlight': 7.25.7
1661 | picocolors: 1.1.1
1662 |
1663 | '@babel/compat-data@7.25.8': {}
1664 |
1665 | '@babel/core@7.25.8':
1666 | dependencies:
1667 | '@ampproject/remapping': 2.3.0
1668 | '@babel/code-frame': 7.25.7
1669 | '@babel/generator': 7.25.7
1670 | '@babel/helper-compilation-targets': 7.25.7
1671 | '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.8)
1672 | '@babel/helpers': 7.25.7
1673 | '@babel/parser': 7.25.8
1674 | '@babel/template': 7.25.7
1675 | '@babel/traverse': 7.25.7
1676 | '@babel/types': 7.25.8
1677 | convert-source-map: 2.0.0
1678 | debug: 4.3.7
1679 | gensync: 1.0.0-beta.2
1680 | json5: 2.2.3
1681 | semver: 6.3.1
1682 | transitivePeerDependencies:
1683 | - supports-color
1684 |
1685 | '@babel/generator@7.25.7':
1686 | dependencies:
1687 | '@babel/types': 7.25.8
1688 | '@jridgewell/gen-mapping': 0.3.5
1689 | '@jridgewell/trace-mapping': 0.3.25
1690 | jsesc: 3.0.2
1691 |
1692 | '@babel/helper-annotate-as-pure@7.25.7':
1693 | dependencies:
1694 | '@babel/types': 7.25.8
1695 |
1696 | '@babel/helper-builder-binary-assignment-operator-visitor@7.25.7':
1697 | dependencies:
1698 | '@babel/traverse': 7.25.7
1699 | '@babel/types': 7.25.8
1700 | transitivePeerDependencies:
1701 | - supports-color
1702 |
1703 | '@babel/helper-compilation-targets@7.25.7':
1704 | dependencies:
1705 | '@babel/compat-data': 7.25.8
1706 | '@babel/helper-validator-option': 7.25.7
1707 | browserslist: 4.24.0
1708 | lru-cache: 5.1.1
1709 | semver: 6.3.1
1710 |
1711 | '@babel/helper-create-class-features-plugin@7.25.7(@babel/core@7.25.8)':
1712 | dependencies:
1713 | '@babel/core': 7.25.8
1714 | '@babel/helper-annotate-as-pure': 7.25.7
1715 | '@babel/helper-member-expression-to-functions': 7.25.7
1716 | '@babel/helper-optimise-call-expression': 7.25.7
1717 | '@babel/helper-replace-supers': 7.25.7(@babel/core@7.25.8)
1718 | '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
1719 | '@babel/traverse': 7.25.7
1720 | semver: 6.3.1
1721 | transitivePeerDependencies:
1722 | - supports-color
1723 |
1724 | '@babel/helper-create-regexp-features-plugin@7.25.7(@babel/core@7.25.8)':
1725 | dependencies:
1726 | '@babel/core': 7.25.8
1727 | '@babel/helper-annotate-as-pure': 7.25.7
1728 | regexpu-core: 6.1.1
1729 | semver: 6.3.1
1730 |
1731 | '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.25.8)':
1732 | dependencies:
1733 | '@babel/core': 7.25.8
1734 | '@babel/helper-compilation-targets': 7.25.7
1735 | '@babel/helper-plugin-utils': 7.25.7
1736 | debug: 4.3.7
1737 | lodash.debounce: 4.0.8
1738 | resolve: 1.22.8
1739 | transitivePeerDependencies:
1740 | - supports-color
1741 |
1742 | '@babel/helper-member-expression-to-functions@7.25.7':
1743 | dependencies:
1744 | '@babel/traverse': 7.25.7
1745 | '@babel/types': 7.25.8
1746 | transitivePeerDependencies:
1747 | - supports-color
1748 |
1749 | '@babel/helper-module-imports@7.25.7':
1750 | dependencies:
1751 | '@babel/traverse': 7.25.7
1752 | '@babel/types': 7.25.8
1753 | transitivePeerDependencies:
1754 | - supports-color
1755 |
1756 | '@babel/helper-module-transforms@7.25.7(@babel/core@7.25.8)':
1757 | dependencies:
1758 | '@babel/core': 7.25.8
1759 | '@babel/helper-module-imports': 7.25.7
1760 | '@babel/helper-simple-access': 7.25.7
1761 | '@babel/helper-validator-identifier': 7.25.7
1762 | '@babel/traverse': 7.25.7
1763 | transitivePeerDependencies:
1764 | - supports-color
1765 |
1766 | '@babel/helper-optimise-call-expression@7.25.7':
1767 | dependencies:
1768 | '@babel/types': 7.25.8
1769 |
1770 | '@babel/helper-plugin-utils@7.25.7': {}
1771 |
1772 | '@babel/helper-remap-async-to-generator@7.25.7(@babel/core@7.25.8)':
1773 | dependencies:
1774 | '@babel/core': 7.25.8
1775 | '@babel/helper-annotate-as-pure': 7.25.7
1776 | '@babel/helper-wrap-function': 7.25.7
1777 | '@babel/traverse': 7.25.7
1778 | transitivePeerDependencies:
1779 | - supports-color
1780 |
1781 | '@babel/helper-replace-supers@7.25.7(@babel/core@7.25.8)':
1782 | dependencies:
1783 | '@babel/core': 7.25.8
1784 | '@babel/helper-member-expression-to-functions': 7.25.7
1785 | '@babel/helper-optimise-call-expression': 7.25.7
1786 | '@babel/traverse': 7.25.7
1787 | transitivePeerDependencies:
1788 | - supports-color
1789 |
1790 | '@babel/helper-simple-access@7.25.7':
1791 | dependencies:
1792 | '@babel/traverse': 7.25.7
1793 | '@babel/types': 7.25.8
1794 | transitivePeerDependencies:
1795 | - supports-color
1796 |
1797 | '@babel/helper-skip-transparent-expression-wrappers@7.25.7':
1798 | dependencies:
1799 | '@babel/traverse': 7.25.7
1800 | '@babel/types': 7.25.8
1801 | transitivePeerDependencies:
1802 | - supports-color
1803 |
1804 | '@babel/helper-string-parser@7.25.7': {}
1805 |
1806 | '@babel/helper-validator-identifier@7.25.7': {}
1807 |
1808 | '@babel/helper-validator-option@7.25.7': {}
1809 |
1810 | '@babel/helper-wrap-function@7.25.7':
1811 | dependencies:
1812 | '@babel/template': 7.25.7
1813 | '@babel/traverse': 7.25.7
1814 | '@babel/types': 7.25.8
1815 | transitivePeerDependencies:
1816 | - supports-color
1817 |
1818 | '@babel/helpers@7.25.7':
1819 | dependencies:
1820 | '@babel/template': 7.25.7
1821 | '@babel/types': 7.25.8
1822 |
1823 | '@babel/highlight@7.25.7':
1824 | dependencies:
1825 | '@babel/helper-validator-identifier': 7.25.7
1826 | chalk: 2.4.2
1827 | js-tokens: 4.0.0
1828 | picocolors: 1.1.1
1829 |
1830 | '@babel/parser@7.25.8':
1831 | dependencies:
1832 | '@babel/types': 7.25.8
1833 |
1834 | '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.7(@babel/core@7.25.8)':
1835 | dependencies:
1836 | '@babel/core': 7.25.8
1837 | '@babel/helper-plugin-utils': 7.25.7
1838 | '@babel/traverse': 7.25.7
1839 | transitivePeerDependencies:
1840 | - supports-color
1841 |
1842 | '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.7(@babel/core@7.25.8)':
1843 | dependencies:
1844 | '@babel/core': 7.25.8
1845 | '@babel/helper-plugin-utils': 7.25.7
1846 |
1847 | '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.7(@babel/core@7.25.8)':
1848 | dependencies:
1849 | '@babel/core': 7.25.8
1850 | '@babel/helper-plugin-utils': 7.25.7
1851 |
1852 | '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.7(@babel/core@7.25.8)':
1853 | dependencies:
1854 | '@babel/core': 7.25.8
1855 | '@babel/helper-plugin-utils': 7.25.7
1856 | '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
1857 | '@babel/plugin-transform-optional-chaining': 7.25.8(@babel/core@7.25.8)
1858 | transitivePeerDependencies:
1859 | - supports-color
1860 |
1861 | '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.7(@babel/core@7.25.8)':
1862 | dependencies:
1863 | '@babel/core': 7.25.8
1864 | '@babel/helper-plugin-utils': 7.25.7
1865 | '@babel/traverse': 7.25.7
1866 | transitivePeerDependencies:
1867 | - supports-color
1868 |
1869 | '@babel/plugin-proposal-decorators@7.25.7(@babel/core@7.25.8)':
1870 | dependencies:
1871 | '@babel/core': 7.25.8
1872 | '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.8)
1873 | '@babel/helper-plugin-utils': 7.25.7
1874 | '@babel/plugin-syntax-decorators': 7.25.7(@babel/core@7.25.8)
1875 | transitivePeerDependencies:
1876 | - supports-color
1877 |
1878 | '@babel/plugin-proposal-export-default-from@7.25.8(@babel/core@7.25.8)':
1879 | dependencies:
1880 | '@babel/core': 7.25.8
1881 | '@babel/helper-plugin-utils': 7.25.7
1882 |
1883 | '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.25.8)':
1884 | dependencies:
1885 | '@babel/core': 7.25.8
1886 |
1887 | '@babel/plugin-syntax-decorators@7.25.7(@babel/core@7.25.8)':
1888 | dependencies:
1889 | '@babel/core': 7.25.8
1890 | '@babel/helper-plugin-utils': 7.25.7
1891 |
1892 | '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.25.8)':
1893 | dependencies:
1894 | '@babel/core': 7.25.8
1895 | '@babel/helper-plugin-utils': 7.25.7
1896 |
1897 | '@babel/plugin-syntax-import-assertions@7.25.7(@babel/core@7.25.8)':
1898 | dependencies:
1899 | '@babel/core': 7.25.8
1900 | '@babel/helper-plugin-utils': 7.25.7
1901 |
1902 | '@babel/plugin-syntax-import-attributes@7.25.7(@babel/core@7.25.8)':
1903 | dependencies:
1904 | '@babel/core': 7.25.8
1905 | '@babel/helper-plugin-utils': 7.25.7
1906 |
1907 | '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.25.8)':
1908 | dependencies:
1909 | '@babel/core': 7.25.8
1910 | '@babel/helper-plugin-utils': 7.25.7
1911 |
1912 | '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.25.8)':
1913 | dependencies:
1914 | '@babel/core': 7.25.8
1915 | '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.8)
1916 | '@babel/helper-plugin-utils': 7.25.7
1917 |
1918 | '@babel/plugin-transform-arrow-functions@7.25.7(@babel/core@7.25.8)':
1919 | dependencies:
1920 | '@babel/core': 7.25.8
1921 | '@babel/helper-plugin-utils': 7.25.7
1922 |
1923 | '@babel/plugin-transform-async-generator-functions@7.25.8(@babel/core@7.25.8)':
1924 | dependencies:
1925 | '@babel/core': 7.25.8
1926 | '@babel/helper-plugin-utils': 7.25.7
1927 | '@babel/helper-remap-async-to-generator': 7.25.7(@babel/core@7.25.8)
1928 | '@babel/traverse': 7.25.7
1929 | transitivePeerDependencies:
1930 | - supports-color
1931 |
1932 | '@babel/plugin-transform-async-to-generator@7.25.7(@babel/core@7.25.8)':
1933 | dependencies:
1934 | '@babel/core': 7.25.8
1935 | '@babel/helper-module-imports': 7.25.7
1936 | '@babel/helper-plugin-utils': 7.25.7
1937 | '@babel/helper-remap-async-to-generator': 7.25.7(@babel/core@7.25.8)
1938 | transitivePeerDependencies:
1939 | - supports-color
1940 |
1941 | '@babel/plugin-transform-block-scoped-functions@7.25.7(@babel/core@7.25.8)':
1942 | dependencies:
1943 | '@babel/core': 7.25.8
1944 | '@babel/helper-plugin-utils': 7.25.7
1945 |
1946 | '@babel/plugin-transform-block-scoping@7.25.7(@babel/core@7.25.8)':
1947 | dependencies:
1948 | '@babel/core': 7.25.8
1949 | '@babel/helper-plugin-utils': 7.25.7
1950 |
1951 | '@babel/plugin-transform-class-properties@7.25.7(@babel/core@7.25.8)':
1952 | dependencies:
1953 | '@babel/core': 7.25.8
1954 | '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.8)
1955 | '@babel/helper-plugin-utils': 7.25.7
1956 | transitivePeerDependencies:
1957 | - supports-color
1958 |
1959 | '@babel/plugin-transform-class-static-block@7.25.8(@babel/core@7.25.8)':
1960 | dependencies:
1961 | '@babel/core': 7.25.8
1962 | '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.8)
1963 | '@babel/helper-plugin-utils': 7.25.7
1964 | transitivePeerDependencies:
1965 | - supports-color
1966 |
1967 | '@babel/plugin-transform-classes@7.25.7(@babel/core@7.25.8)':
1968 | dependencies:
1969 | '@babel/core': 7.25.8
1970 | '@babel/helper-annotate-as-pure': 7.25.7
1971 | '@babel/helper-compilation-targets': 7.25.7
1972 | '@babel/helper-plugin-utils': 7.25.7
1973 | '@babel/helper-replace-supers': 7.25.7(@babel/core@7.25.8)
1974 | '@babel/traverse': 7.25.7
1975 | globals: 11.12.0
1976 | transitivePeerDependencies:
1977 | - supports-color
1978 |
1979 | '@babel/plugin-transform-computed-properties@7.25.7(@babel/core@7.25.8)':
1980 | dependencies:
1981 | '@babel/core': 7.25.8
1982 | '@babel/helper-plugin-utils': 7.25.7
1983 | '@babel/template': 7.25.7
1984 |
1985 | '@babel/plugin-transform-destructuring@7.25.7(@babel/core@7.25.8)':
1986 | dependencies:
1987 | '@babel/core': 7.25.8
1988 | '@babel/helper-plugin-utils': 7.25.7
1989 |
1990 | '@babel/plugin-transform-dotall-regex@7.25.7(@babel/core@7.25.8)':
1991 | dependencies:
1992 | '@babel/core': 7.25.8
1993 | '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.8)
1994 | '@babel/helper-plugin-utils': 7.25.7
1995 |
1996 | '@babel/plugin-transform-duplicate-keys@7.25.7(@babel/core@7.25.8)':
1997 | dependencies:
1998 | '@babel/core': 7.25.8
1999 | '@babel/helper-plugin-utils': 7.25.7
2000 |
2001 | '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.7(@babel/core@7.25.8)':
2002 | dependencies:
2003 | '@babel/core': 7.25.8
2004 | '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.8)
2005 | '@babel/helper-plugin-utils': 7.25.7
2006 |
2007 | '@babel/plugin-transform-dynamic-import@7.25.8(@babel/core@7.25.8)':
2008 | dependencies:
2009 | '@babel/core': 7.25.8
2010 | '@babel/helper-plugin-utils': 7.25.7
2011 |
2012 | '@babel/plugin-transform-exponentiation-operator@7.25.7(@babel/core@7.25.8)':
2013 | dependencies:
2014 | '@babel/core': 7.25.8
2015 | '@babel/helper-builder-binary-assignment-operator-visitor': 7.25.7
2016 | '@babel/helper-plugin-utils': 7.25.7
2017 | transitivePeerDependencies:
2018 | - supports-color
2019 |
2020 | '@babel/plugin-transform-export-namespace-from@7.25.8(@babel/core@7.25.8)':
2021 | dependencies:
2022 | '@babel/core': 7.25.8
2023 | '@babel/helper-plugin-utils': 7.25.7
2024 |
2025 | '@babel/plugin-transform-for-of@7.25.7(@babel/core@7.25.8)':
2026 | dependencies:
2027 | '@babel/core': 7.25.8
2028 | '@babel/helper-plugin-utils': 7.25.7
2029 | '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
2030 | transitivePeerDependencies:
2031 | - supports-color
2032 |
2033 | '@babel/plugin-transform-function-name@7.25.7(@babel/core@7.25.8)':
2034 | dependencies:
2035 | '@babel/core': 7.25.8
2036 | '@babel/helper-compilation-targets': 7.25.7
2037 | '@babel/helper-plugin-utils': 7.25.7
2038 | '@babel/traverse': 7.25.7
2039 | transitivePeerDependencies:
2040 | - supports-color
2041 |
2042 | '@babel/plugin-transform-json-strings@7.25.8(@babel/core@7.25.8)':
2043 | dependencies:
2044 | '@babel/core': 7.25.8
2045 | '@babel/helper-plugin-utils': 7.25.7
2046 |
2047 | '@babel/plugin-transform-literals@7.25.7(@babel/core@7.25.8)':
2048 | dependencies:
2049 | '@babel/core': 7.25.8
2050 | '@babel/helper-plugin-utils': 7.25.7
2051 |
2052 | '@babel/plugin-transform-logical-assignment-operators@7.25.8(@babel/core@7.25.8)':
2053 | dependencies:
2054 | '@babel/core': 7.25.8
2055 | '@babel/helper-plugin-utils': 7.25.7
2056 |
2057 | '@babel/plugin-transform-member-expression-literals@7.25.7(@babel/core@7.25.8)':
2058 | dependencies:
2059 | '@babel/core': 7.25.8
2060 | '@babel/helper-plugin-utils': 7.25.7
2061 |
2062 | '@babel/plugin-transform-modules-amd@7.25.7(@babel/core@7.25.8)':
2063 | dependencies:
2064 | '@babel/core': 7.25.8
2065 | '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.8)
2066 | '@babel/helper-plugin-utils': 7.25.7
2067 | transitivePeerDependencies:
2068 | - supports-color
2069 |
2070 | '@babel/plugin-transform-modules-commonjs@7.25.7(@babel/core@7.25.8)':
2071 | dependencies:
2072 | '@babel/core': 7.25.8
2073 | '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.8)
2074 | '@babel/helper-plugin-utils': 7.25.7
2075 | '@babel/helper-simple-access': 7.25.7
2076 | transitivePeerDependencies:
2077 | - supports-color
2078 |
2079 | '@babel/plugin-transform-modules-systemjs@7.25.7(@babel/core@7.25.8)':
2080 | dependencies:
2081 | '@babel/core': 7.25.8
2082 | '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.8)
2083 | '@babel/helper-plugin-utils': 7.25.7
2084 | '@babel/helper-validator-identifier': 7.25.7
2085 | '@babel/traverse': 7.25.7
2086 | transitivePeerDependencies:
2087 | - supports-color
2088 |
2089 | '@babel/plugin-transform-modules-umd@7.25.7(@babel/core@7.25.8)':
2090 | dependencies:
2091 | '@babel/core': 7.25.8
2092 | '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.8)
2093 | '@babel/helper-plugin-utils': 7.25.7
2094 | transitivePeerDependencies:
2095 | - supports-color
2096 |
2097 | '@babel/plugin-transform-named-capturing-groups-regex@7.25.7(@babel/core@7.25.8)':
2098 | dependencies:
2099 | '@babel/core': 7.25.8
2100 | '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.8)
2101 | '@babel/helper-plugin-utils': 7.25.7
2102 |
2103 | '@babel/plugin-transform-new-target@7.25.7(@babel/core@7.25.8)':
2104 | dependencies:
2105 | '@babel/core': 7.25.8
2106 | '@babel/helper-plugin-utils': 7.25.7
2107 |
2108 | '@babel/plugin-transform-nullish-coalescing-operator@7.25.8(@babel/core@7.25.8)':
2109 | dependencies:
2110 | '@babel/core': 7.25.8
2111 | '@babel/helper-plugin-utils': 7.25.7
2112 |
2113 | '@babel/plugin-transform-numeric-separator@7.25.8(@babel/core@7.25.8)':
2114 | dependencies:
2115 | '@babel/core': 7.25.8
2116 | '@babel/helper-plugin-utils': 7.25.7
2117 |
2118 | '@babel/plugin-transform-object-rest-spread@7.25.8(@babel/core@7.25.8)':
2119 | dependencies:
2120 | '@babel/core': 7.25.8
2121 | '@babel/helper-compilation-targets': 7.25.7
2122 | '@babel/helper-plugin-utils': 7.25.7
2123 | '@babel/plugin-transform-parameters': 7.25.7(@babel/core@7.25.8)
2124 |
2125 | '@babel/plugin-transform-object-super@7.25.7(@babel/core@7.25.8)':
2126 | dependencies:
2127 | '@babel/core': 7.25.8
2128 | '@babel/helper-plugin-utils': 7.25.7
2129 | '@babel/helper-replace-supers': 7.25.7(@babel/core@7.25.8)
2130 | transitivePeerDependencies:
2131 | - supports-color
2132 |
2133 | '@babel/plugin-transform-optional-catch-binding@7.25.8(@babel/core@7.25.8)':
2134 | dependencies:
2135 | '@babel/core': 7.25.8
2136 | '@babel/helper-plugin-utils': 7.25.7
2137 |
2138 | '@babel/plugin-transform-optional-chaining@7.25.8(@babel/core@7.25.8)':
2139 | dependencies:
2140 | '@babel/core': 7.25.8
2141 | '@babel/helper-plugin-utils': 7.25.7
2142 | '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
2143 | transitivePeerDependencies:
2144 | - supports-color
2145 |
2146 | '@babel/plugin-transform-parameters@7.25.7(@babel/core@7.25.8)':
2147 | dependencies:
2148 | '@babel/core': 7.25.8
2149 | '@babel/helper-plugin-utils': 7.25.7
2150 |
2151 | '@babel/plugin-transform-private-methods@7.25.7(@babel/core@7.25.8)':
2152 | dependencies:
2153 | '@babel/core': 7.25.8
2154 | '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.8)
2155 | '@babel/helper-plugin-utils': 7.25.7
2156 | transitivePeerDependencies:
2157 | - supports-color
2158 |
2159 | '@babel/plugin-transform-private-property-in-object@7.25.8(@babel/core@7.25.8)':
2160 | dependencies:
2161 | '@babel/core': 7.25.8
2162 | '@babel/helper-annotate-as-pure': 7.25.7
2163 | '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.8)
2164 | '@babel/helper-plugin-utils': 7.25.7
2165 | transitivePeerDependencies:
2166 | - supports-color
2167 |
2168 | '@babel/plugin-transform-property-literals@7.25.7(@babel/core@7.25.8)':
2169 | dependencies:
2170 | '@babel/core': 7.25.8
2171 | '@babel/helper-plugin-utils': 7.25.7
2172 |
2173 | '@babel/plugin-transform-regenerator@7.25.7(@babel/core@7.25.8)':
2174 | dependencies:
2175 | '@babel/core': 7.25.8
2176 | '@babel/helper-plugin-utils': 7.25.7
2177 | regenerator-transform: 0.15.2
2178 |
2179 | '@babel/plugin-transform-reserved-words@7.25.7(@babel/core@7.25.8)':
2180 | dependencies:
2181 | '@babel/core': 7.25.8
2182 | '@babel/helper-plugin-utils': 7.25.7
2183 |
2184 | '@babel/plugin-transform-shorthand-properties@7.25.7(@babel/core@7.25.8)':
2185 | dependencies:
2186 | '@babel/core': 7.25.8
2187 | '@babel/helper-plugin-utils': 7.25.7
2188 |
2189 | '@babel/plugin-transform-spread@7.25.7(@babel/core@7.25.8)':
2190 | dependencies:
2191 | '@babel/core': 7.25.8
2192 | '@babel/helper-plugin-utils': 7.25.7
2193 | '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
2194 | transitivePeerDependencies:
2195 | - supports-color
2196 |
2197 | '@babel/plugin-transform-sticky-regex@7.25.7(@babel/core@7.25.8)':
2198 | dependencies:
2199 | '@babel/core': 7.25.8
2200 | '@babel/helper-plugin-utils': 7.25.7
2201 |
2202 | '@babel/plugin-transform-template-literals@7.25.7(@babel/core@7.25.8)':
2203 | dependencies:
2204 | '@babel/core': 7.25.8
2205 | '@babel/helper-plugin-utils': 7.25.7
2206 |
2207 | '@babel/plugin-transform-typeof-symbol@7.25.7(@babel/core@7.25.8)':
2208 | dependencies:
2209 | '@babel/core': 7.25.8
2210 | '@babel/helper-plugin-utils': 7.25.7
2211 |
2212 | '@babel/plugin-transform-unicode-escapes@7.25.7(@babel/core@7.25.8)':
2213 | dependencies:
2214 | '@babel/core': 7.25.8
2215 | '@babel/helper-plugin-utils': 7.25.7
2216 |
2217 | '@babel/plugin-transform-unicode-property-regex@7.25.7(@babel/core@7.25.8)':
2218 | dependencies:
2219 | '@babel/core': 7.25.8
2220 | '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.8)
2221 | '@babel/helper-plugin-utils': 7.25.7
2222 |
2223 | '@babel/plugin-transform-unicode-regex@7.25.7(@babel/core@7.25.8)':
2224 | dependencies:
2225 | '@babel/core': 7.25.8
2226 | '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.8)
2227 | '@babel/helper-plugin-utils': 7.25.7
2228 |
2229 | '@babel/plugin-transform-unicode-sets-regex@7.25.7(@babel/core@7.25.8)':
2230 | dependencies:
2231 | '@babel/core': 7.25.8
2232 | '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.8)
2233 | '@babel/helper-plugin-utils': 7.25.7
2234 |
2235 | '@babel/preset-env@7.25.8(@babel/core@7.25.8)':
2236 | dependencies:
2237 | '@babel/compat-data': 7.25.8
2238 | '@babel/core': 7.25.8
2239 | '@babel/helper-compilation-targets': 7.25.7
2240 | '@babel/helper-plugin-utils': 7.25.7
2241 | '@babel/helper-validator-option': 7.25.7
2242 | '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.7(@babel/core@7.25.8)
2243 | '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.25.7(@babel/core@7.25.8)
2244 | '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.7(@babel/core@7.25.8)
2245 | '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.25.7(@babel/core@7.25.8)
2246 | '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.7(@babel/core@7.25.8)
2247 | '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.25.8)
2248 | '@babel/plugin-syntax-import-assertions': 7.25.7(@babel/core@7.25.8)
2249 | '@babel/plugin-syntax-import-attributes': 7.25.7(@babel/core@7.25.8)
2250 | '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.25.8)
2251 | '@babel/plugin-transform-arrow-functions': 7.25.7(@babel/core@7.25.8)
2252 | '@babel/plugin-transform-async-generator-functions': 7.25.8(@babel/core@7.25.8)
2253 | '@babel/plugin-transform-async-to-generator': 7.25.7(@babel/core@7.25.8)
2254 | '@babel/plugin-transform-block-scoped-functions': 7.25.7(@babel/core@7.25.8)
2255 | '@babel/plugin-transform-block-scoping': 7.25.7(@babel/core@7.25.8)
2256 | '@babel/plugin-transform-class-properties': 7.25.7(@babel/core@7.25.8)
2257 | '@babel/plugin-transform-class-static-block': 7.25.8(@babel/core@7.25.8)
2258 | '@babel/plugin-transform-classes': 7.25.7(@babel/core@7.25.8)
2259 | '@babel/plugin-transform-computed-properties': 7.25.7(@babel/core@7.25.8)
2260 | '@babel/plugin-transform-destructuring': 7.25.7(@babel/core@7.25.8)
2261 | '@babel/plugin-transform-dotall-regex': 7.25.7(@babel/core@7.25.8)
2262 | '@babel/plugin-transform-duplicate-keys': 7.25.7(@babel/core@7.25.8)
2263 | '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.25.7(@babel/core@7.25.8)
2264 | '@babel/plugin-transform-dynamic-import': 7.25.8(@babel/core@7.25.8)
2265 | '@babel/plugin-transform-exponentiation-operator': 7.25.7(@babel/core@7.25.8)
2266 | '@babel/plugin-transform-export-namespace-from': 7.25.8(@babel/core@7.25.8)
2267 | '@babel/plugin-transform-for-of': 7.25.7(@babel/core@7.25.8)
2268 | '@babel/plugin-transform-function-name': 7.25.7(@babel/core@7.25.8)
2269 | '@babel/plugin-transform-json-strings': 7.25.8(@babel/core@7.25.8)
2270 | '@babel/plugin-transform-literals': 7.25.7(@babel/core@7.25.8)
2271 | '@babel/plugin-transform-logical-assignment-operators': 7.25.8(@babel/core@7.25.8)
2272 | '@babel/plugin-transform-member-expression-literals': 7.25.7(@babel/core@7.25.8)
2273 | '@babel/plugin-transform-modules-amd': 7.25.7(@babel/core@7.25.8)
2274 | '@babel/plugin-transform-modules-commonjs': 7.25.7(@babel/core@7.25.8)
2275 | '@babel/plugin-transform-modules-systemjs': 7.25.7(@babel/core@7.25.8)
2276 | '@babel/plugin-transform-modules-umd': 7.25.7(@babel/core@7.25.8)
2277 | '@babel/plugin-transform-named-capturing-groups-regex': 7.25.7(@babel/core@7.25.8)
2278 | '@babel/plugin-transform-new-target': 7.25.7(@babel/core@7.25.8)
2279 | '@babel/plugin-transform-nullish-coalescing-operator': 7.25.8(@babel/core@7.25.8)
2280 | '@babel/plugin-transform-numeric-separator': 7.25.8(@babel/core@7.25.8)
2281 | '@babel/plugin-transform-object-rest-spread': 7.25.8(@babel/core@7.25.8)
2282 | '@babel/plugin-transform-object-super': 7.25.7(@babel/core@7.25.8)
2283 | '@babel/plugin-transform-optional-catch-binding': 7.25.8(@babel/core@7.25.8)
2284 | '@babel/plugin-transform-optional-chaining': 7.25.8(@babel/core@7.25.8)
2285 | '@babel/plugin-transform-parameters': 7.25.7(@babel/core@7.25.8)
2286 | '@babel/plugin-transform-private-methods': 7.25.7(@babel/core@7.25.8)
2287 | '@babel/plugin-transform-private-property-in-object': 7.25.8(@babel/core@7.25.8)
2288 | '@babel/plugin-transform-property-literals': 7.25.7(@babel/core@7.25.8)
2289 | '@babel/plugin-transform-regenerator': 7.25.7(@babel/core@7.25.8)
2290 | '@babel/plugin-transform-reserved-words': 7.25.7(@babel/core@7.25.8)
2291 | '@babel/plugin-transform-shorthand-properties': 7.25.7(@babel/core@7.25.8)
2292 | '@babel/plugin-transform-spread': 7.25.7(@babel/core@7.25.8)
2293 | '@babel/plugin-transform-sticky-regex': 7.25.7(@babel/core@7.25.8)
2294 | '@babel/plugin-transform-template-literals': 7.25.7(@babel/core@7.25.8)
2295 | '@babel/plugin-transform-typeof-symbol': 7.25.7(@babel/core@7.25.8)
2296 | '@babel/plugin-transform-unicode-escapes': 7.25.7(@babel/core@7.25.8)
2297 | '@babel/plugin-transform-unicode-property-regex': 7.25.7(@babel/core@7.25.8)
2298 | '@babel/plugin-transform-unicode-regex': 7.25.7(@babel/core@7.25.8)
2299 | '@babel/plugin-transform-unicode-sets-regex': 7.25.7(@babel/core@7.25.8)
2300 | '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.25.8)
2301 | babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.25.8)
2302 | babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.25.8)
2303 | babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.25.8)
2304 | core-js-compat: 3.38.1
2305 | semver: 6.3.1
2306 | transitivePeerDependencies:
2307 | - supports-color
2308 |
2309 | '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.25.8)':
2310 | dependencies:
2311 | '@babel/core': 7.25.8
2312 | '@babel/helper-plugin-utils': 7.25.7
2313 | '@babel/types': 7.25.8
2314 | esutils: 2.0.3
2315 |
2316 | '@babel/runtime@7.25.7':
2317 | dependencies:
2318 | regenerator-runtime: 0.14.1
2319 |
2320 | '@babel/template@7.25.7':
2321 | dependencies:
2322 | '@babel/code-frame': 7.25.7
2323 | '@babel/parser': 7.25.8
2324 | '@babel/types': 7.25.8
2325 |
2326 | '@babel/traverse@7.25.7':
2327 | dependencies:
2328 | '@babel/code-frame': 7.25.7
2329 | '@babel/generator': 7.25.7
2330 | '@babel/parser': 7.25.8
2331 | '@babel/template': 7.25.7
2332 | '@babel/types': 7.25.8
2333 | debug: 4.3.7
2334 | globals: 11.12.0
2335 | transitivePeerDependencies:
2336 | - supports-color
2337 |
2338 | '@babel/types@7.25.8':
2339 | dependencies:
2340 | '@babel/helper-string-parser': 7.25.7
2341 | '@babel/helper-validator-identifier': 7.25.7
2342 | to-fast-properties: 2.0.0
2343 |
2344 | '@colors/colors@1.5.0':
2345 | optional: true
2346 |
2347 | '@conectate/ct-lit@4.0.0':
2348 | dependencies:
2349 | lit: 3.2.1
2350 | tslib: 2.8.0
2351 |
2352 | '@conectate/ct-router@4.0.0':
2353 | dependencies:
2354 | '@conectate/ct-lit': 4.0.0
2355 | pwa-helpers: 0.9.1
2356 | tslib: 2.8.0
2357 |
2358 | '@esbuild/aix-ppc64@0.21.5':
2359 | optional: true
2360 |
2361 | '@esbuild/android-arm64@0.21.5':
2362 | optional: true
2363 |
2364 | '@esbuild/android-arm@0.21.5':
2365 | optional: true
2366 |
2367 | '@esbuild/android-x64@0.21.5':
2368 | optional: true
2369 |
2370 | '@esbuild/darwin-arm64@0.21.5':
2371 | optional: true
2372 |
2373 | '@esbuild/darwin-x64@0.21.5':
2374 | optional: true
2375 |
2376 | '@esbuild/freebsd-arm64@0.21.5':
2377 | optional: true
2378 |
2379 | '@esbuild/freebsd-x64@0.21.5':
2380 | optional: true
2381 |
2382 | '@esbuild/linux-arm64@0.21.5':
2383 | optional: true
2384 |
2385 | '@esbuild/linux-arm@0.21.5':
2386 | optional: true
2387 |
2388 | '@esbuild/linux-ia32@0.21.5':
2389 | optional: true
2390 |
2391 | '@esbuild/linux-loong64@0.21.5':
2392 | optional: true
2393 |
2394 | '@esbuild/linux-mips64el@0.21.5':
2395 | optional: true
2396 |
2397 | '@esbuild/linux-ppc64@0.21.5':
2398 | optional: true
2399 |
2400 | '@esbuild/linux-riscv64@0.21.5':
2401 | optional: true
2402 |
2403 | '@esbuild/linux-s390x@0.21.5':
2404 | optional: true
2405 |
2406 | '@esbuild/linux-x64@0.21.5':
2407 | optional: true
2408 |
2409 | '@esbuild/netbsd-x64@0.21.5':
2410 | optional: true
2411 |
2412 | '@esbuild/openbsd-x64@0.21.5':
2413 | optional: true
2414 |
2415 | '@esbuild/sunos-x64@0.21.5':
2416 | optional: true
2417 |
2418 | '@esbuild/win32-arm64@0.21.5':
2419 | optional: true
2420 |
2421 | '@esbuild/win32-ia32@0.21.5':
2422 | optional: true
2423 |
2424 | '@esbuild/win32-x64@0.21.5':
2425 | optional: true
2426 |
2427 | '@firebase/app-types@0.9.2': {}
2428 |
2429 | '@jridgewell/gen-mapping@0.3.5':
2430 | dependencies:
2431 | '@jridgewell/set-array': 1.2.1
2432 | '@jridgewell/sourcemap-codec': 1.5.0
2433 | '@jridgewell/trace-mapping': 0.3.25
2434 |
2435 | '@jridgewell/resolve-uri@3.1.2': {}
2436 |
2437 | '@jridgewell/set-array@1.2.1': {}
2438 |
2439 | '@jridgewell/source-map@0.3.6':
2440 | dependencies:
2441 | '@jridgewell/gen-mapping': 0.3.5
2442 | '@jridgewell/trace-mapping': 0.3.25
2443 |
2444 | '@jridgewell/sourcemap-codec@1.5.0': {}
2445 |
2446 | '@jridgewell/trace-mapping@0.3.25':
2447 | dependencies:
2448 | '@jridgewell/resolve-uri': 3.1.2
2449 | '@jridgewell/sourcemap-codec': 1.5.0
2450 |
2451 | '@lit-labs/ssr-dom-shim@1.2.1': {}
2452 |
2453 | '@lit/reactive-element@2.0.4':
2454 | dependencies:
2455 | '@lit-labs/ssr-dom-shim': 1.2.1
2456 |
2457 | '@nodelib/fs.scandir@2.1.5':
2458 | dependencies:
2459 | '@nodelib/fs.stat': 2.0.5
2460 | run-parallel: 1.2.0
2461 |
2462 | '@nodelib/fs.stat@2.0.5': {}
2463 |
2464 | '@nodelib/fs.walk@1.2.8':
2465 | dependencies:
2466 | '@nodelib/fs.scandir': 2.1.5
2467 | fastq: 1.17.1
2468 |
2469 | '@rollup/plugin-babel@6.0.4(@babel/core@7.25.8)(rollup@4.24.0)':
2470 | dependencies:
2471 | '@babel/core': 7.25.8
2472 | '@babel/helper-module-imports': 7.25.7
2473 | '@rollup/pluginutils': 5.1.2(rollup@4.24.0)
2474 | optionalDependencies:
2475 | rollup: 4.24.0
2476 | transitivePeerDependencies:
2477 | - supports-color
2478 |
2479 | '@rollup/plugin-node-resolve@15.3.0(rollup@4.24.0)':
2480 | dependencies:
2481 | '@rollup/pluginutils': 5.1.2(rollup@4.24.0)
2482 | '@types/resolve': 1.20.2
2483 | deepmerge: 4.3.1
2484 | is-module: 1.0.0
2485 | resolve: 1.22.8
2486 | optionalDependencies:
2487 | rollup: 4.24.0
2488 |
2489 | '@rollup/plugin-terser@0.4.4(rollup@4.24.0)':
2490 | dependencies:
2491 | serialize-javascript: 6.0.2
2492 | smob: 1.5.0
2493 | terser: 5.36.0
2494 | optionalDependencies:
2495 | rollup: 4.24.0
2496 |
2497 | '@rollup/pluginutils@5.1.2(rollup@4.24.0)':
2498 | dependencies:
2499 | '@types/estree': 1.0.6
2500 | estree-walker: 2.0.2
2501 | picomatch: 2.3.1
2502 | optionalDependencies:
2503 | rollup: 4.24.0
2504 |
2505 | '@rollup/rollup-android-arm-eabi@4.24.0':
2506 | optional: true
2507 |
2508 | '@rollup/rollup-android-arm64@4.24.0':
2509 | optional: true
2510 |
2511 | '@rollup/rollup-darwin-arm64@4.24.0':
2512 | optional: true
2513 |
2514 | '@rollup/rollup-darwin-x64@4.24.0':
2515 | optional: true
2516 |
2517 | '@rollup/rollup-linux-arm-gnueabihf@4.24.0':
2518 | optional: true
2519 |
2520 | '@rollup/rollup-linux-arm-musleabihf@4.24.0':
2521 | optional: true
2522 |
2523 | '@rollup/rollup-linux-arm64-gnu@4.24.0':
2524 | optional: true
2525 |
2526 | '@rollup/rollup-linux-arm64-musl@4.24.0':
2527 | optional: true
2528 |
2529 | '@rollup/rollup-linux-powerpc64le-gnu@4.24.0':
2530 | optional: true
2531 |
2532 | '@rollup/rollup-linux-riscv64-gnu@4.24.0':
2533 | optional: true
2534 |
2535 | '@rollup/rollup-linux-s390x-gnu@4.24.0':
2536 | optional: true
2537 |
2538 | '@rollup/rollup-linux-x64-gnu@4.24.0':
2539 | optional: true
2540 |
2541 | '@rollup/rollup-linux-x64-musl@4.24.0':
2542 | optional: true
2543 |
2544 | '@rollup/rollup-win32-arm64-msvc@4.24.0':
2545 | optional: true
2546 |
2547 | '@rollup/rollup-win32-ia32-msvc@4.24.0':
2548 | optional: true
2549 |
2550 | '@rollup/rollup-win32-x64-msvc@4.24.0':
2551 | optional: true
2552 |
2553 | '@types/clean-css@4.2.11':
2554 | dependencies:
2555 | '@types/node': 22.7.7
2556 | source-map: 0.6.1
2557 |
2558 | '@types/estree@1.0.6': {}
2559 |
2560 | '@types/fs-extra@8.1.5':
2561 | dependencies:
2562 | '@types/node': 22.7.7
2563 |
2564 | '@types/glob@7.2.0':
2565 | dependencies:
2566 | '@types/minimatch': 5.1.2
2567 | '@types/node': 22.7.7
2568 |
2569 | '@types/html-minifier@3.5.3':
2570 | dependencies:
2571 | '@types/clean-css': 4.2.11
2572 | '@types/relateurl': 0.2.33
2573 | '@types/uglify-js': 3.17.5
2574 |
2575 | '@types/minimatch@5.1.2': {}
2576 |
2577 | '@types/node@22.7.7':
2578 | dependencies:
2579 | undici-types: 6.19.8
2580 |
2581 | '@types/relateurl@0.2.33': {}
2582 |
2583 | '@types/resolve@1.20.2': {}
2584 |
2585 | '@types/trusted-types@2.0.7': {}
2586 |
2587 | '@types/uglify-js@3.17.5':
2588 | dependencies:
2589 | source-map: 0.6.1
2590 |
2591 | acorn@8.13.0: {}
2592 |
2593 | ansi-regex@5.0.1: {}
2594 |
2595 | ansi-styles@3.2.1:
2596 | dependencies:
2597 | color-convert: 1.9.3
2598 |
2599 | ansi-styles@4.3.0:
2600 | dependencies:
2601 | color-convert: 2.0.1
2602 |
2603 | array-union@2.1.0: {}
2604 |
2605 | babel-plugin-bundled-import-meta@0.3.2(@babel/core@7.25.8):
2606 | dependencies:
2607 | '@babel/core': 7.25.8
2608 | '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.25.8)
2609 | '@babel/template': 7.25.7
2610 |
2611 | babel-plugin-polyfill-corejs2@0.4.11(@babel/core@7.25.8):
2612 | dependencies:
2613 | '@babel/compat-data': 7.25.8
2614 | '@babel/core': 7.25.8
2615 | '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.8)
2616 | semver: 6.3.1
2617 | transitivePeerDependencies:
2618 | - supports-color
2619 |
2620 | babel-plugin-polyfill-corejs3@0.10.6(@babel/core@7.25.8):
2621 | dependencies:
2622 | '@babel/core': 7.25.8
2623 | '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.8)
2624 | core-js-compat: 3.38.1
2625 | transitivePeerDependencies:
2626 | - supports-color
2627 |
2628 | babel-plugin-polyfill-regenerator@0.6.2(@babel/core@7.25.8):
2629 | dependencies:
2630 | '@babel/core': 7.25.8
2631 | '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.8)
2632 | transitivePeerDependencies:
2633 | - supports-color
2634 |
2635 | babel-plugin-template-html-minifier@4.1.0:
2636 | dependencies:
2637 | clean-css: 4.2.4
2638 | html-minifier-terser: 5.1.1
2639 | is-builtin-module: 3.2.1
2640 |
2641 | balanced-match@1.0.2: {}
2642 |
2643 | brace-expansion@1.1.11:
2644 | dependencies:
2645 | balanced-match: 1.0.2
2646 | concat-map: 0.0.1
2647 |
2648 | braces@3.0.3:
2649 | dependencies:
2650 | fill-range: 7.1.1
2651 |
2652 | brotli-size@4.0.0:
2653 | dependencies:
2654 | duplexer: 0.1.1
2655 |
2656 | browserslist@4.24.0:
2657 | dependencies:
2658 | caniuse-lite: 1.0.30001669
2659 | electron-to-chromium: 1.5.41
2660 | node-releases: 2.0.18
2661 | update-browserslist-db: 1.1.1(browserslist@4.24.0)
2662 |
2663 | buffer-from@1.1.2: {}
2664 |
2665 | builtin-modules@3.3.0: {}
2666 |
2667 | camel-case@3.0.0:
2668 | dependencies:
2669 | no-case: 2.3.2
2670 | upper-case: 1.1.3
2671 |
2672 | camel-case@4.1.2:
2673 | dependencies:
2674 | pascal-case: 3.1.2
2675 | tslib: 2.8.0
2676 |
2677 | caniuse-lite@1.0.30001669: {}
2678 |
2679 | chalk@2.4.2:
2680 | dependencies:
2681 | ansi-styles: 3.2.1
2682 | escape-string-regexp: 1.0.5
2683 | supports-color: 5.5.0
2684 |
2685 | clean-css@4.2.4:
2686 | dependencies:
2687 | source-map: 0.6.1
2688 |
2689 | cli-table3@0.6.5:
2690 | dependencies:
2691 | string-width: 4.2.3
2692 | optionalDependencies:
2693 | '@colors/colors': 1.5.0
2694 |
2695 | cliui@8.0.1:
2696 | dependencies:
2697 | string-width: 4.2.3
2698 | strip-ansi: 6.0.1
2699 | wrap-ansi: 7.0.0
2700 |
2701 | color-convert@1.9.3:
2702 | dependencies:
2703 | color-name: 1.1.3
2704 |
2705 | color-convert@2.0.1:
2706 | dependencies:
2707 | color-name: 1.1.4
2708 |
2709 | color-name@1.1.3: {}
2710 |
2711 | color-name@1.1.4: {}
2712 |
2713 | colorette@1.4.0: {}
2714 |
2715 | commander@2.20.3: {}
2716 |
2717 | commander@4.1.1: {}
2718 |
2719 | concat-map@0.0.1: {}
2720 |
2721 | convert-source-map@2.0.0: {}
2722 |
2723 | core-js-compat@3.38.1:
2724 | dependencies:
2725 | browserslist: 4.24.0
2726 |
2727 | core-js@3.38.1: {}
2728 |
2729 | debug@4.3.7:
2730 | dependencies:
2731 | ms: 2.1.3
2732 |
2733 | deepmerge@4.3.1: {}
2734 |
2735 | define-lazy-prop@2.0.0: {}
2736 |
2737 | dir-glob@3.0.1:
2738 | dependencies:
2739 | path-type: 4.0.0
2740 |
2741 | dot-case@3.0.4:
2742 | dependencies:
2743 | no-case: 3.0.4
2744 | tslib: 2.8.0
2745 |
2746 | duplexer@0.1.1: {}
2747 |
2748 | duplexer@0.1.2: {}
2749 |
2750 | electron-to-chromium@1.5.41: {}
2751 |
2752 | emoji-regex@8.0.0: {}
2753 |
2754 | esbuild@0.21.5:
2755 | optionalDependencies:
2756 | '@esbuild/aix-ppc64': 0.21.5
2757 | '@esbuild/android-arm': 0.21.5
2758 | '@esbuild/android-arm64': 0.21.5
2759 | '@esbuild/android-x64': 0.21.5
2760 | '@esbuild/darwin-arm64': 0.21.5
2761 | '@esbuild/darwin-x64': 0.21.5
2762 | '@esbuild/freebsd-arm64': 0.21.5
2763 | '@esbuild/freebsd-x64': 0.21.5
2764 | '@esbuild/linux-arm': 0.21.5
2765 | '@esbuild/linux-arm64': 0.21.5
2766 | '@esbuild/linux-ia32': 0.21.5
2767 | '@esbuild/linux-loong64': 0.21.5
2768 | '@esbuild/linux-mips64el': 0.21.5
2769 | '@esbuild/linux-ppc64': 0.21.5
2770 | '@esbuild/linux-riscv64': 0.21.5
2771 | '@esbuild/linux-s390x': 0.21.5
2772 | '@esbuild/linux-x64': 0.21.5
2773 | '@esbuild/netbsd-x64': 0.21.5
2774 | '@esbuild/openbsd-x64': 0.21.5
2775 | '@esbuild/sunos-x64': 0.21.5
2776 | '@esbuild/win32-arm64': 0.21.5
2777 | '@esbuild/win32-ia32': 0.21.5
2778 | '@esbuild/win32-x64': 0.21.5
2779 |
2780 | escalade@3.2.0: {}
2781 |
2782 | escape-string-regexp@1.0.5: {}
2783 |
2784 | estree-walker@2.0.2: {}
2785 |
2786 | esutils@2.0.3: {}
2787 |
2788 | fast-glob@3.3.2:
2789 | dependencies:
2790 | '@nodelib/fs.stat': 2.0.5
2791 | '@nodelib/fs.walk': 1.2.8
2792 | glob-parent: 5.1.2
2793 | merge2: 1.4.1
2794 | micromatch: 4.0.8
2795 |
2796 | fastq@1.17.1:
2797 | dependencies:
2798 | reusify: 1.0.4
2799 |
2800 | filesize@10.1.6: {}
2801 |
2802 | fill-range@7.1.1:
2803 | dependencies:
2804 | to-regex-range: 5.0.1
2805 |
2806 | fs-extra@8.1.0:
2807 | dependencies:
2808 | graceful-fs: 4.2.11
2809 | jsonfile: 4.0.0
2810 | universalify: 0.1.2
2811 |
2812 | fs.realpath@1.0.0: {}
2813 |
2814 | fsevents@2.3.3:
2815 | optional: true
2816 |
2817 | function-bind@1.1.2: {}
2818 |
2819 | gensync@1.0.0-beta.2: {}
2820 |
2821 | get-caller-file@2.0.5: {}
2822 |
2823 | glob-parent@5.1.2:
2824 | dependencies:
2825 | is-glob: 4.0.3
2826 |
2827 | glob@7.2.3:
2828 | dependencies:
2829 | fs.realpath: 1.0.0
2830 | inflight: 1.0.6
2831 | inherits: 2.0.4
2832 | minimatch: 3.1.2
2833 | once: 1.4.0
2834 | path-is-absolute: 1.0.1
2835 |
2836 | globals@11.12.0: {}
2837 |
2838 | globby@10.0.1:
2839 | dependencies:
2840 | '@types/glob': 7.2.0
2841 | array-union: 2.1.0
2842 | dir-glob: 3.0.1
2843 | fast-glob: 3.3.2
2844 | glob: 7.2.3
2845 | ignore: 5.3.2
2846 | merge2: 1.4.1
2847 | slash: 3.0.0
2848 |
2849 | graceful-fs@4.2.11: {}
2850 |
2851 | gzip-size@7.0.0:
2852 | dependencies:
2853 | duplexer: 0.1.2
2854 |
2855 | has-flag@3.0.0: {}
2856 |
2857 | hasown@2.0.2:
2858 | dependencies:
2859 | function-bind: 1.1.2
2860 |
2861 | he@1.2.0: {}
2862 |
2863 | html-minifier-terser@5.1.1:
2864 | dependencies:
2865 | camel-case: 4.1.2
2866 | clean-css: 4.2.4
2867 | commander: 4.1.1
2868 | he: 1.2.0
2869 | param-case: 3.0.4
2870 | relateurl: 0.2.7
2871 | terser: 4.8.1
2872 |
2873 | html-minifier@4.0.0:
2874 | dependencies:
2875 | camel-case: 3.0.0
2876 | clean-css: 4.2.4
2877 | commander: 2.20.3
2878 | he: 1.2.0
2879 | param-case: 2.1.1
2880 | relateurl: 0.2.7
2881 | uglify-js: 3.19.3
2882 |
2883 | ignore@5.3.2: {}
2884 |
2885 | inflight@1.0.6:
2886 | dependencies:
2887 | once: 1.4.0
2888 | wrappy: 1.0.2
2889 |
2890 | inherits@2.0.4: {}
2891 |
2892 | is-builtin-module@3.2.1:
2893 | dependencies:
2894 | builtin-modules: 3.3.0
2895 |
2896 | is-core-module@2.15.1:
2897 | dependencies:
2898 | hasown: 2.0.2
2899 |
2900 | is-docker@2.2.1: {}
2901 |
2902 | is-extglob@2.1.1: {}
2903 |
2904 | is-fullwidth-code-point@3.0.0: {}
2905 |
2906 | is-glob@4.0.3:
2907 | dependencies:
2908 | is-extglob: 2.1.1
2909 |
2910 | is-module@1.0.0: {}
2911 |
2912 | is-number@7.0.0: {}
2913 |
2914 | is-plain-object@3.0.1: {}
2915 |
2916 | is-wsl@2.2.0:
2917 | dependencies:
2918 | is-docker: 2.2.1
2919 |
2920 | js-tokens@4.0.0: {}
2921 |
2922 | jsesc@3.0.2: {}
2923 |
2924 | json5@2.2.3: {}
2925 |
2926 | jsonfile@4.0.0:
2927 | optionalDependencies:
2928 | graceful-fs: 4.2.11
2929 |
2930 | lit-element@4.1.1:
2931 | dependencies:
2932 | '@lit-labs/ssr-dom-shim': 1.2.1
2933 | '@lit/reactive-element': 2.0.4
2934 | lit-html: 3.2.1
2935 |
2936 | lit-html@3.2.1:
2937 | dependencies:
2938 | '@types/trusted-types': 2.0.7
2939 |
2940 | lit@3.2.1:
2941 | dependencies:
2942 | '@lit/reactive-element': 2.0.4
2943 | lit-element: 4.1.1
2944 | lit-html: 3.2.1
2945 |
2946 | lodash.debounce@4.0.8: {}
2947 |
2948 | lower-case@1.1.4: {}
2949 |
2950 | lower-case@2.0.2:
2951 | dependencies:
2952 | tslib: 2.8.0
2953 |
2954 | lru-cache@5.1.1:
2955 | dependencies:
2956 | yallist: 3.1.1
2957 |
2958 | magic-string@0.25.9:
2959 | dependencies:
2960 | sourcemap-codec: 1.4.8
2961 |
2962 | merge2@1.4.1: {}
2963 |
2964 | micromatch@4.0.8:
2965 | dependencies:
2966 | braces: 3.0.3
2967 | picomatch: 2.3.1
2968 |
2969 | minify-html-literals@1.3.5:
2970 | dependencies:
2971 | '@types/html-minifier': 3.5.3
2972 | clean-css: 4.2.4
2973 | html-minifier: 4.0.0
2974 | magic-string: 0.25.9
2975 | parse-literals: 1.2.1
2976 |
2977 | minimatch@3.1.2:
2978 | dependencies:
2979 | brace-expansion: 1.1.11
2980 |
2981 | ms@2.1.3: {}
2982 |
2983 | nanoid@3.3.7: {}
2984 |
2985 | no-case@2.3.2:
2986 | dependencies:
2987 | lower-case: 1.1.4
2988 |
2989 | no-case@3.0.4:
2990 | dependencies:
2991 | lower-case: 2.0.2
2992 | tslib: 2.8.0
2993 |
2994 | node-releases@2.0.18: {}
2995 |
2996 | once@1.4.0:
2997 | dependencies:
2998 | wrappy: 1.0.2
2999 |
3000 | open@8.4.2:
3001 | dependencies:
3002 | define-lazy-prop: 2.0.0
3003 | is-docker: 2.2.1
3004 | is-wsl: 2.2.0
3005 |
3006 | param-case@2.1.1:
3007 | dependencies:
3008 | no-case: 2.3.2
3009 |
3010 | param-case@3.0.4:
3011 | dependencies:
3012 | dot-case: 3.0.4
3013 | tslib: 2.8.0
3014 |
3015 | parse-literals@1.2.1:
3016 | dependencies:
3017 | typescript: 4.9.5
3018 |
3019 | pascal-case@3.1.2:
3020 | dependencies:
3021 | no-case: 3.0.4
3022 | tslib: 2.8.0
3023 |
3024 | path-is-absolute@1.0.1: {}
3025 |
3026 | path-parse@1.0.7: {}
3027 |
3028 | path-type@4.0.0: {}
3029 |
3030 | picocolors@1.1.1: {}
3031 |
3032 | picomatch@2.3.1: {}
3033 |
3034 | postcss@8.4.47:
3035 | dependencies:
3036 | nanoid: 3.3.7
3037 | picocolors: 1.1.1
3038 | source-map-js: 1.2.1
3039 |
3040 | prettier@3.3.3: {}
3041 |
3042 | pwa-helpers@0.9.1: {}
3043 |
3044 | queue-microtask@1.2.3: {}
3045 |
3046 | randombytes@2.1.0:
3047 | dependencies:
3048 | safe-buffer: 5.2.1
3049 |
3050 | regenerate-unicode-properties@10.2.0:
3051 | dependencies:
3052 | regenerate: 1.4.2
3053 |
3054 | regenerate@1.4.2: {}
3055 |
3056 | regenerator-runtime@0.14.1: {}
3057 |
3058 | regenerator-transform@0.15.2:
3059 | dependencies:
3060 | '@babel/runtime': 7.25.7
3061 |
3062 | regexpu-core@6.1.1:
3063 | dependencies:
3064 | regenerate: 1.4.2
3065 | regenerate-unicode-properties: 10.2.0
3066 | regjsgen: 0.8.0
3067 | regjsparser: 0.11.1
3068 | unicode-match-property-ecmascript: 2.0.0
3069 | unicode-match-property-value-ecmascript: 2.2.0
3070 |
3071 | regjsgen@0.8.0: {}
3072 |
3073 | regjsparser@0.11.1:
3074 | dependencies:
3075 | jsesc: 3.0.2
3076 |
3077 | relateurl@0.2.7: {}
3078 |
3079 | require-directory@2.1.1: {}
3080 |
3081 | resolve@1.22.8:
3082 | dependencies:
3083 | is-core-module: 2.15.1
3084 | path-parse: 1.0.7
3085 | supports-preserve-symlinks-flag: 1.0.0
3086 |
3087 | reusify@1.0.4: {}
3088 |
3089 | rollup-plugin-copy@3.5.0:
3090 | dependencies:
3091 | '@types/fs-extra': 8.1.5
3092 | colorette: 1.4.0
3093 | fs-extra: 8.1.0
3094 | globby: 10.0.1
3095 | is-plain-object: 3.0.1
3096 |
3097 | rollup-plugin-html-literals@1.1.8(rollup@4.24.0):
3098 | dependencies:
3099 | '@rollup/pluginutils': 5.1.2(rollup@4.24.0)
3100 | minify-html-literals: 1.3.5
3101 | rollup: 4.24.0
3102 |
3103 | rollup-plugin-summary@2.0.1(rollup@4.24.0):
3104 | dependencies:
3105 | brotli-size: 4.0.0
3106 | cli-table3: 0.6.5
3107 | filesize: 10.1.6
3108 | gzip-size: 7.0.0
3109 | rollup: 4.24.0
3110 | terser: 5.36.0
3111 |
3112 | rollup-plugin-visualizer@5.12.0(rollup@4.24.0):
3113 | dependencies:
3114 | open: 8.4.2
3115 | picomatch: 2.3.1
3116 | source-map: 0.7.4
3117 | yargs: 17.7.2
3118 | optionalDependencies:
3119 | rollup: 4.24.0
3120 |
3121 | rollup@4.24.0:
3122 | dependencies:
3123 | '@types/estree': 1.0.6
3124 | optionalDependencies:
3125 | '@rollup/rollup-android-arm-eabi': 4.24.0
3126 | '@rollup/rollup-android-arm64': 4.24.0
3127 | '@rollup/rollup-darwin-arm64': 4.24.0
3128 | '@rollup/rollup-darwin-x64': 4.24.0
3129 | '@rollup/rollup-linux-arm-gnueabihf': 4.24.0
3130 | '@rollup/rollup-linux-arm-musleabihf': 4.24.0
3131 | '@rollup/rollup-linux-arm64-gnu': 4.24.0
3132 | '@rollup/rollup-linux-arm64-musl': 4.24.0
3133 | '@rollup/rollup-linux-powerpc64le-gnu': 4.24.0
3134 | '@rollup/rollup-linux-riscv64-gnu': 4.24.0
3135 | '@rollup/rollup-linux-s390x-gnu': 4.24.0
3136 | '@rollup/rollup-linux-x64-gnu': 4.24.0
3137 | '@rollup/rollup-linux-x64-musl': 4.24.0
3138 | '@rollup/rollup-win32-arm64-msvc': 4.24.0
3139 | '@rollup/rollup-win32-ia32-msvc': 4.24.0
3140 | '@rollup/rollup-win32-x64-msvc': 4.24.0
3141 | fsevents: 2.3.3
3142 |
3143 | run-parallel@1.2.0:
3144 | dependencies:
3145 | queue-microtask: 1.2.3
3146 |
3147 | safe-buffer@5.2.1: {}
3148 |
3149 | semver@6.3.1: {}
3150 |
3151 | serialize-javascript@6.0.2:
3152 | dependencies:
3153 | randombytes: 2.1.0
3154 |
3155 | slash@3.0.0: {}
3156 |
3157 | smob@1.5.0: {}
3158 |
3159 | source-map-js@1.2.1: {}
3160 |
3161 | source-map-support@0.5.21:
3162 | dependencies:
3163 | buffer-from: 1.1.2
3164 | source-map: 0.6.1
3165 |
3166 | source-map@0.6.1: {}
3167 |
3168 | source-map@0.7.4: {}
3169 |
3170 | sourcemap-codec@1.4.8: {}
3171 |
3172 | string-width@4.2.3:
3173 | dependencies:
3174 | emoji-regex: 8.0.0
3175 | is-fullwidth-code-point: 3.0.0
3176 | strip-ansi: 6.0.1
3177 |
3178 | strip-ansi@6.0.1:
3179 | dependencies:
3180 | ansi-regex: 5.0.1
3181 |
3182 | supports-color@5.5.0:
3183 | dependencies:
3184 | has-flag: 3.0.0
3185 |
3186 | supports-preserve-symlinks-flag@1.0.0: {}
3187 |
3188 | terser@4.8.1:
3189 | dependencies:
3190 | acorn: 8.13.0
3191 | commander: 2.20.3
3192 | source-map: 0.6.1
3193 | source-map-support: 0.5.21
3194 |
3195 | terser@5.36.0:
3196 | dependencies:
3197 | '@jridgewell/source-map': 0.3.6
3198 | acorn: 8.13.0
3199 | commander: 2.20.3
3200 | source-map-support: 0.5.21
3201 |
3202 | to-fast-properties@2.0.0: {}
3203 |
3204 | to-regex-range@5.0.1:
3205 | dependencies:
3206 | is-number: 7.0.0
3207 |
3208 | tslib@2.8.0: {}
3209 |
3210 | typescript@4.9.5: {}
3211 |
3212 | typescript@5.6.3: {}
3213 |
3214 | uglify-js@3.19.3: {}
3215 |
3216 | undici-types@6.19.8: {}
3217 |
3218 | unicode-canonical-property-names-ecmascript@2.0.1: {}
3219 |
3220 | unicode-match-property-ecmascript@2.0.0:
3221 | dependencies:
3222 | unicode-canonical-property-names-ecmascript: 2.0.1
3223 | unicode-property-aliases-ecmascript: 2.1.0
3224 |
3225 | unicode-match-property-value-ecmascript@2.2.0: {}
3226 |
3227 | unicode-property-aliases-ecmascript@2.1.0: {}
3228 |
3229 | universalify@0.1.2: {}
3230 |
3231 | update-browserslist-db@1.1.1(browserslist@4.24.0):
3232 | dependencies:
3233 | browserslist: 4.24.0
3234 | escalade: 3.2.0
3235 | picocolors: 1.1.1
3236 |
3237 | upper-case@1.1.3: {}
3238 |
3239 | vite@5.4.9(@types/node@22.7.7)(terser@5.36.0):
3240 | dependencies:
3241 | esbuild: 0.21.5
3242 | postcss: 8.4.47
3243 | rollup: 4.24.0
3244 | optionalDependencies:
3245 | '@types/node': 22.7.7
3246 | fsevents: 2.3.3
3247 | terser: 5.36.0
3248 |
3249 | wrap-ansi@7.0.0:
3250 | dependencies:
3251 | ansi-styles: 4.3.0
3252 | string-width: 4.2.3
3253 | strip-ansi: 6.0.1
3254 |
3255 | wrappy@1.0.2: {}
3256 |
3257 | y18n@5.0.8: {}
3258 |
3259 | yallist@3.1.1: {}
3260 |
3261 | yargs-parser@21.1.1: {}
3262 |
3263 | yargs@17.7.2:
3264 | dependencies:
3265 | cliui: 8.0.1
3266 | escalade: 3.2.0
3267 | get-caller-file: 2.0.5
3268 | require-directory: 2.1.1
3269 | string-width: 4.2.3
3270 | y18n: 5.0.8
3271 | yargs-parser: 21.1.1
3272 |
--------------------------------------------------------------------------------
/templates/production-template/public/index.universal.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | LitElement Starter Project
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
67 |
68 |
69 |
70 |
71 |
72 | Please enable JavaScript to view this website. v3.5.8
73 |
74 |
75 |
81 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/templates/production-template/public/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "LitElement App",
3 | "short_name": "LitElement App",
4 | "description": "",
5 | "icons": [
6 | {
7 | "src": "res/drawable/logo-192x192.png",
8 | "sizes": "192x192",
9 | "type": "image/png"
10 | },
11 | {
12 | "src": "res/drawable/logo-512x512.png",
13 | "sizes": "512x512",
14 | "type": "image/png"
15 | }
16 | ],
17 | "orientation": "portrait",
18 | "start_url": "/",
19 | "background_color": "#2084e8",
20 | "display": "standalone",
21 | "theme_color": "#2084e8",
22 | "gcm_sender_id": "103953800507"
23 | }
--------------------------------------------------------------------------------
/templates/production-template/public/service-worker.js:
--------------------------------------------------------------------------------
1 | console.log("development");
--------------------------------------------------------------------------------
/templates/production-template/res/drawable/favicon.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/templates/production-template/res/drawable/logo-192x192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litelement-dev/create-lit/3e5306ee3b3c36b8525b745503224db7a4e359f7/templates/production-template/res/drawable/logo-192x192.png
--------------------------------------------------------------------------------
/templates/production-template/res/drawable/logo-48x48.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litelement-dev/create-lit/3e5306ee3b3c36b8525b745503224db7a4e359f7/templates/production-template/res/drawable/logo-48x48.png
--------------------------------------------------------------------------------
/templates/production-template/res/drawable/logo-512x512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litelement-dev/create-lit/3e5306ee3b3c36b8525b745503224db7a4e359f7/templates/production-template/res/drawable/logo-512x512.png
--------------------------------------------------------------------------------
/templates/production-template/res/drawable/og/default.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/litelement-dev/create-lit/3e5306ee3b3c36b8525b745503224db7a4e359f7/templates/production-template/res/drawable/og/default.png
--------------------------------------------------------------------------------
/templates/production-template/src/base/app-404.ts:
--------------------------------------------------------------------------------
1 | import { CtLit, html, property, customElement, css } from '@conectate/ct-lit';
2 |
3 | @customElement('app-404')
4 | export class App404 extends CtLit {
5 | static styles = css`
6 | :host {
7 | display: block;
8 | }
9 | `;
10 |
11 | render() {
12 | return html`404 - Not found `;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/templates/production-template/src/base/app-localstorage.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * Document your localStorage
3 | */
4 | export default class AppLocalStorage {
5 | static get theme() {
6 | return localStorage.theme;
7 | }
8 | static set theme(val) {
9 | localStorage.theme = val;
10 | }
11 | }
--------------------------------------------------------------------------------
/templates/production-template/src/base/app-router.ts:
--------------------------------------------------------------------------------
1 | import { CtLit, html, customElement, css } from '@conectate/ct-lit';
2 | import { Page } from '@conectate/ct-router';
3 | import '@conectate/ct-router';
4 | /**
5 | * @see https://www.npmjs.com/package/@conectate/ct-router
6 | */
7 | @customElement('app-router')
8 | export class AppRouter extends CtLit {
9 | static styles = [
10 | css`
11 | :host {
12 | display: block;
13 | }
14 | `
15 | ];
16 | /** You can add more pages and behaviors
17 | * @see https://www.npmjs.com/package/@conectate/ct-router
18 | */
19 | static pages: Page[] = [
20 | {
21 | path: '/',
22 | element: html` `,
23 | from: () => import('../home/activities/home-app'),
24 | auth: false,
25 | title: () => `Page 1 • Example.com`
26 | },
27 | {
28 | path: '/404',
29 | element: html` `,
30 | from: () => import('./app-404'),
31 | auth: false,
32 | title: () => `404 • Example.com`
33 | },
34 | {
35 | path: '/login',
36 | element: html` `,
37 | from: () => import('../login/activities/app-login'),
38 | auth: false,
39 | title: () => `Login • Example.com`
40 | }
41 | ];
42 |
43 | render() {
44 | return html` `;
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/templates/production-template/src/base/styles/default-theme.ts:
--------------------------------------------------------------------------------
1 | import { css } from 'lit';
2 |
3 | // Define your Theme
4 | let defaultTheme = css`
5 | :root {
6 | --color-primary: #2cb5e8;
7 | --color-primary-medium: #2cb5e8b0;
8 | --color-primary-light: #2cb5e82b;
9 | --color-on-primary: #fff;
10 |
11 | --color-secondary: #0fb8ad;
12 | /* Color de objeto en cima de color de acento */
13 | --color-on-secondary: #fff;
14 |
15 | /* Fondos */
16 | --color-background: #f7f7f8;
17 | /* Fondos Textos que aparecen en los fondos */
18 | --color-on-background: #535353; /* Gris */
19 |
20 | /* Fondos que estan en cima de los fondos (ct-cards) */
21 | --color-surface: #ffffff;
22 | /* Fondos Textos que aparecen en los ct-cards */
23 | --color-on-surface: #535353; /* Gris */
24 |
25 | /* Color de objeto en cima de error */
26 | --color-error: #b10808;
27 | --color-on-error: #fff;
28 |
29 | --high-emphasis: #000000de;
30 | --medium-emphasis: #00000099;
31 | --color-disable: #00000047;
32 |
33 | /* Blur */
34 | --color-blur: rgba(255, 255, 255, 0.7);
35 | --color-blur-surface: rgba(255, 255, 255, 0.6);
36 | --color-on-surface-opaque: #8e8e8e; /* Texto sencundarios */
37 | --color-on-surface-dividers: #7c7c7c30; /* divisores */
38 | --color-app: linear-gradient(90deg, #0fb8ad 0%, #1fc8db 51%, #2cb5e8 75%);
39 | --dark-primary-color: #218cb3;
40 | }
41 | .dark {
42 | --color-primary: #2cb5e8;
43 | --color-primary-medium: #2cb5e8b0;
44 | --color-primary-light: #2cb5e82b;
45 | --color-on-primary: #fff;
46 |
47 | --color-secondary: #0fb8ad;
48 | --color-on-secondary: #fff;
49 |
50 | /* Fondos */
51 | --color-background: #111e23;
52 | /* Fondos Textos que aparecen en los fondos */
53 | --color-on-background: #fff;
54 |
55 | /* Fondos que estan en cima de los fondos (ct-cards) */
56 | --color-surface: #1a2c34;
57 | /* Fondos Textos que aparecen en los ct-cards */
58 | --color-on-surface: #fff;
59 |
60 | --color-error: #cf6679;
61 | --color-on-error: #fff;
62 |
63 | --high-emphasis: #ffffffde;
64 | --medium-emphasis: #ffffff99;
65 | --color-disable: #ffffff61;
66 |
67 | --color-on-surface-opaque: #8e8e8e; /* Texto sencundarios */
68 | --color-on-surface-dividers: #bbbbbb24; /* divisores */
69 | --color-blur: rgba(35, 35, 37, 0.7);
70 | --color-blur-surface: #1a2c34b3;
71 | --color-app: linear-gradient(90deg, #0fb8ad 0%, #1fc8db 51%, #2cb5e8 75%);
72 | --dark-primary-color: #218cb3;
73 | }
74 | `;
75 |
76 | /**
77 | * Inject CSS
78 | */
79 | export function injectTheme() {
80 | const link = document.createElement('link');
81 | link.rel = 'stylesheet';
82 | link.type = 'text/css';
83 | link.href = 'https://fonts.googleapis.com/css?family=Roboto:400,500,700';
84 | document.head.appendChild(link);
85 | const style = document.createElement('style');
86 | style.innerHTML = defaultTheme.cssText;
87 | document.head.appendChild(style);
88 | }
89 |
90 | export class Theme {
91 | static setTheme(color: 'dark' | 'light') {
92 | if (color == 'dark') {
93 | localStorage.theme = 'dark';
94 | document.documentElement.classList.add('dark');
95 | document.documentElement.classList.remove('light');
96 | } else {
97 | localStorage.theme = 'light';
98 | document.documentElement.classList.remove('dark');
99 | document.documentElement.classList.add('light');
100 | }
101 | }
102 | }
103 |
--------------------------------------------------------------------------------
/templates/production-template/src/base/styles/lit-shared-styles.ts:
--------------------------------------------------------------------------------
1 | import { css } from 'lit';
2 |
3 | // You Shared Styles
4 | export const litStyles = css`
5 | *,
6 | *:before,
7 | *:after {
8 | box-sizing: border-box;
9 | -moz-osx-font-smoothing: grayscale;
10 | -webkit-font-smoothing: antialiased;
11 | }
12 |
13 | .highlight-font {
14 | font-family: 'Roboto', arial, sans-serif;
15 | }
16 |
17 | h1,
18 | h2,
19 | h3,
20 | h4,
21 | h5,
22 | h6 {
23 | font-family: 'Roboto', arial, sans-serif;
24 | }
25 | h1,
26 | h2,
27 | h3,
28 | h4 {
29 | color: var(--dark-primary-color);
30 | /* margin-top: 0.8em;
31 | margin-bottom: 0.8em; */
32 | }
33 | `;
--------------------------------------------------------------------------------
/templates/production-template/src/home/activities/home-app.ts:
--------------------------------------------------------------------------------
1 | import { CtLit, html, property, customElement, css } from '@conectate/ct-lit';
2 | import { strings } from '../../xconfig/strings';
3 |
4 | @customElement('home-app')
5 | export class HomeApp extends CtLit {
6 | static styles = [
7 | css`
8 | :host {
9 | display: block;
10 | }
11 | `
12 | ];
13 |
14 | render() {
15 | return html` ${strings.hello_world}
16 | `;
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/templates/production-template/src/lit-app.ts:
--------------------------------------------------------------------------------
1 | import './base/app-router';
2 | import AppLocalStorage from './base/app-localstorage';
3 | import { loadLang } from './xconfig/strings';
4 | import { css, CtLit, customElement, html } from '@conectate/ct-lit';
5 | import { property } from 'lit/decorators.js';
6 | import { injectTheme, Theme } from './base/styles/default-theme';
7 |
8 | @customElement('lit-app')
9 | export class LitApp extends CtLit {
10 | static styles = [
11 | css`
12 | :host,
13 | main {
14 | display: flex;
15 | flex-direction: column;
16 | color: var(--color-on-background);
17 | height: 100%;
18 | }
19 | app-router {
20 | flex: 1;
21 | }
22 | header {
23 | display: flex;
24 | align-items: center;
25 | font-size: 1.5em;
26 | font-weight: bold;
27 | padding: 0px 16px;
28 | height: 56px;
29 | color: var(--color-primary);
30 | background: var(--color-surface);
31 | box-shadow: rgba(0, 0, 0, 0.26) 0px 4px 11px 0px;
32 | z-index: 90;
33 | position: relative;
34 | }
35 | `
36 | ];
37 | @property({ type: Number }) foo = 1;
38 |
39 | async connectedCallback() {
40 | await loadLang();
41 | injectTheme();
42 | Theme.setTheme(AppLocalStorage.theme || 'light');
43 | super.connectedCallback();
44 | }
45 |
46 | render() {
47 | return html`
48 |
49 |
50 |
51 |
52 | `;
53 | }
54 |
55 | firstUpdated() {}
56 | }
57 |
--------------------------------------------------------------------------------
/templates/production-template/src/login/activities/app-login.ts:
--------------------------------------------------------------------------------
1 | import { CtLit, html, property, customElement, css } from '@conectate/ct-lit';
2 |
3 | @customElement('app-login')
4 | export class AppLogin extends CtLit {
5 | static styles = css`
6 | :host {
7 | display: block;
8 | }
9 | `;
10 |
11 | render() {
12 | return html`Login `;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/templates/production-template/src/xconfig/strings/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @author Herberth Obregón
3 | * @date 03/01/2021
4 | * Add langs
5 | */
6 | import { es } from './lang/es';
7 | // @ts-ignore
8 | const strings: { [key in keyof typeof es]: typeof es[key] } = {};
9 |
10 | export type tSupportLangs = 'es';
11 | export const supportLang: tSupportLangs[] = ['es'];
12 |
13 | export function getLang(defaultLang = 'es'): tSupportLangs {
14 | if (localStorage.lang == 'null') delete localStorage.lang;
15 | let lang = localStorage.lang || window.navigator.language || defaultLang;
16 | lang = lang.substring(0, 2);
17 | if (supportLang.includes(lang)) {
18 | return lang;
19 | } else {
20 | return 'es';
21 | }
22 | }
23 | export async function loadLang() {
24 | document.documentElement.lang = getLang();
25 | switch (getLang()) {
26 | default:
27 | case 'es':
28 | let es = await import('./lang/es');
29 | setNewDict(es.es);
30 | break;
31 | }
32 | // @ts-ignore
33 | window.strings = strings;
34 | }
35 |
36 | function setNewDict(str: any) {
37 | Object.keys(str).forEach((key: any) => {
38 | // @ts-ignore
39 | strings[key] = str[key];
40 | });
41 | }
42 |
43 | export { strings };
44 |
--------------------------------------------------------------------------------
/templates/production-template/src/xconfig/strings/lang/es.ts:
--------------------------------------------------------------------------------
1 | export const es = {
2 | hello_world: "Hola Mundo / Hello World"
3 | }
--------------------------------------------------------------------------------
/templates/production-template/src/xconfig/typings.d.ts:
--------------------------------------------------------------------------------
1 |
2 | declare module '*.png'
3 | declare module '*.jpg'
4 | declare module '*.jpeg'
5 | declare module '*.svg'
6 | declare module '*.gif'
7 |
8 |
--------------------------------------------------------------------------------
/templates/production-template/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "resolveJsonModule": true,
4 | /* Basic Options */
5 | "target": "ES2019", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017','ES2018' or 'ESNEXT'. */
6 | "module": "ESNext", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */
7 | "lib": ["es2017","dom"], /* Specify library files to be included in the compilation. */
8 | "allowJs": true, /* Allow javascript files to be compiled. */
9 | // "checkJs": true, /* Report errors in .js files. */
10 | // "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', or 'react'. */
11 | // "declaration": true, /* Generates corresponding '.d.ts' file. */
12 | // "declarationMap": true, /* Generates a sourcemap for each corresponding '.d.ts' file. */
13 | // "sourceMap": true, /* Generates corresponding '.map' file. */
14 | // "outFile": "./", /* Concatenate and emit output to single file. */
15 | "outDir": "dist", /* Redirect output structure to the directory. */
16 | // "rootDir": "./", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */
17 | // "composite": true, /* Enable project compilation */
18 | // "removeComments": true, /* Do not emit comments to output. */
19 | // "noEmit": true, /* Do not emit outputs. */
20 | // "importHelpers": true, /* Import emit helpers from 'tslib'. */
21 | // "downlevelIteration": true, /* Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. */
22 | // "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */
23 | /* Strict Type-Checking Options */
24 | "strict": true, /* Enable all strict type-checking options. */
25 | // "noImplicitAny": true, /* Raise error on expressions and declarations with an implied 'any' type. */
26 | // "strictNullChecks": true, /* Enable strict null checks. */
27 | // "strictFunctionTypes": true, /* Enable strict checking of function types. */
28 | // "strictBindCallApply": true, /* Enable strict 'bind', 'call', and 'apply' methods on functions. */
29 | // "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */
30 | //"noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */
31 | //"alwaysStrict": true, /* Parse in strict mode and emit "use strict" for each source file. */
32 | /* Additional Checks */
33 | // "noUnusedLocals": true, /* Report errors on unused locals. */
34 | // "noUnusedParameters": true, /* Report errors on unused parameters. */
35 | // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */
36 | // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */
37 | /* Module Resolution Options */
38 | "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */
39 | // "baseUrl": "./", /* Base directory to resolve non-absolute module names. */
40 | // "paths": {}, /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */
41 | // "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */
42 | "typeRoots": ["./@conectate/typings"], /* List of folders to include type definitions from. */
43 | // "types": [], /* Type declaration files to be included in compilation. */
44 | "allowSyntheticDefaultImports": true, /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */
45 | "esModuleInterop": true, /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */
46 | // "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */
47 | /* Source Map Options */
48 | // "sourceRoot": "", /* Specify the location where debugger should locate TypeScript files instead of source locations. */
49 | // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */
50 | // "inlineSourceMap": true, /* Emit a single file with source maps instead of having a separate file. */
51 | // "inlineSources": true, /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */
52 | /* Experimental Options */
53 | "experimentalDecorators": true /* Enables experimental support for ES7 decorators. */
54 | // "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */
55 | },
56 | "exclude": [
57 | "dist",
58 | "webpack.config.js"
59 | ]
60 | }
--------------------------------------------------------------------------------
/templates/production-template/vite.config.ts:
--------------------------------------------------------------------------------
1 | import { RollupBabelInputPluginOptions, babel } from '@rollup/plugin-babel';
2 | import copy, { CopyOptions } from 'rollup-plugin-copy';
3 | import { Plugin, defineConfig } from 'vite';
4 |
5 | import resolve from '@rollup/plugin-node-resolve';
6 | import terser from '@rollup/plugin-terser';
7 | import { readFileSync } from 'node:fs';
8 | import minifyHTML from 'rollup-plugin-html-literals';
9 | import summary from 'rollup-plugin-summary';
10 | import app from './package.json';
11 |
12 | const babelConfig: RollupBabelInputPluginOptions = {
13 | babelHelpers: 'bundled',
14 | extensions: ['.js', '.jsx', '.ts', '.tsx'],
15 | exclude: [/\bcore-js\b/],
16 | babelrc: false,
17 | plugins: [
18 | ['@babel/plugin-proposal-decorators', { decoratorsBeforeExport: true }],
19 | '@babel/plugin-syntax-dynamic-import',
20 | '@babel/plugin-syntax-import-meta',
21 | '@babel/plugin-proposal-export-default-from'
22 | ],
23 | presets: [['@babel/preset-env', { targets: { chrome: '65' }, useBuiltIns: 'usage', corejs: '3', debug: false }]]
24 | };
25 |
26 | const copyConfig: CopyOptions = {
27 | hook: 'closeBundle',
28 | targets: [{ src: 'res', dest: 'dist' }]
29 | };
30 | export const svgLoader: () => Plugin = () => {
31 | var regexSequences: [RegExp, string][] = [
32 | // Remove XML stuffs and comments
33 | [/<\?xml[\s\S]*?>/gi, ''],
34 | [//gi, ''],
35 | [//gi, ''],
36 |
37 | // SVG XML -> HTML5
38 | [/\<([A-Za-z]+)([^\>]*)\/\>/g, '<$1$2>$1>'], // convert self-closing XML SVG nodes to explicitly closed HTML5 SVG nodes
39 | [/\s+/g, ' '], // replace whitespace sequences with a single space
40 | [/\> \<'] // remove whitespace between tags
41 | ];
42 | const getExtractedSVG = (svgStr: string) => regexSequences.reduce((prev, regexSequence) => prev.replace(regexSequence[0], regexSequence[1]), svgStr).trim();
43 | return {
44 | name: 'vite-svg-patch-plugin',
45 | transform: function (code, id) {
46 | if (id.endsWith('.svg')) {
47 | const extractedSvg = readFileSync(id, 'utf8');
48 | return `export const value = '${getExtractedSVG(extractedSvg)}'\n;export default value`;
49 | }
50 | return code;
51 | }
52 | };
53 | };
54 |
55 | // https://vitejs.dev/config/
56 | export default (opts: { mode: 'production' | 'development'; command: 'build' | 'serve' }) => {
57 | return defineConfig({
58 | server: {
59 | port: Number(process.env.PORT || 3000)
60 | },
61 | define: {
62 | 'process.env.NODE_ENV': JSON.stringify(opts.mode),
63 | 'process.env.VERSION': JSON.stringify(app.version)
64 | },
65 | plugins: [],
66 | build: {
67 | assetsInlineLimit: 100000,
68 | commonjsOptions: {
69 | sourceMap: false
70 | },
71 | rollupOptions: {
72 | input: {
73 | app: './src/lit-app.ts'
74 | },
75 | output: {
76 | format: 'esm',
77 | chunkFileNames: `v${app.version}/${process.env.NODE_ENV == 'development' ? '[name].' : 'c.'}[hash].js`,
78 | entryFileNames: `v${app.version}/[name].bundle.js`,
79 | dir: 'dist'
80 | },
81 | plugins: [
82 | // Minify HTML template literals
83 | minifyHTML(),
84 | babel(babelConfig),
85 | // Resolve bare module specifiers to relative paths
86 | resolve(),
87 | // Copy res to dist folder
88 | copy(copyConfig),
89 | // Minify JS
90 | terser({
91 | format: {
92 | comments: false
93 | },
94 | compress: false,
95 | module: true
96 | }),
97 | // Print bundle summary
98 | summary({
99 | showMinifiedSize: false,
100 | showGzippedSize: false
101 | })
102 | ],
103 | preserveEntrySignatures: false
104 | }
105 | }
106 | });
107 | };
108 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "exclude": [
3 | "dist",
4 | "templates"
5 | ],
6 | "compilerOptions": {
7 | "target": "es2022" /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019' or 'ESNEXT'. */,
8 | "module": "es2022" /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */,
9 | "moduleResolution": "node" /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */,
10 | "declaration": true /* Generates corresponding '.d.ts' file. */,
11 | // "sourceMap": true, /* Generates corresponding '.map' file. */
12 | "outDir": "./dist" /* Redirect output structure to the directory. */,
13 | "rootDir": "./" /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */,
14 | "strict": true /* Enable all strict type-checking options. */,
15 | "esModuleInterop": true /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies */
16 | }
17 | }
--------------------------------------------------------------------------------
/types/gitconfig.d.ts:
--------------------------------------------------------------------------------
1 | declare module 'gitconfig';
2 |
--------------------------------------------------------------------------------
/types/is-utf8.d.ts:
--------------------------------------------------------------------------------
1 | declare module 'is-utf8';
2 |
--------------------------------------------------------------------------------
/types/license.js.d.ts:
--------------------------------------------------------------------------------
1 | declare module 'license.js';
2 |
--------------------------------------------------------------------------------