Merge Branch create-util #19
|
@ -15,7 +15,8 @@
|
|||
"api:test": "pnpm --filter astro-ghostcms test",
|
||||
"api:test:watch": "pnpm --filter astro-ghostcms test:watch",
|
||||
"api:test:coverage": "pnpm --filter astro-ghostcms test:coverage",
|
||||
"api:test:ci": "pnpm --filter astro-ghostcms test:ci"
|
||||
"api:test:ci": "pnpm --filter astro-ghostcms test:ci",
|
||||
"create:dry": "pnpm --filter create-astro-ghostcms dryrun"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@biomejs/biome": "1.5.3",
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2024 Adam Matthiesen
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
|
@ -0,0 +1,13 @@
|
|||
# `@matthiesenxyz/create-astro-ghostcms`
|
||||
|
||||
Utility to quickly get started with our Integration and astro.
|
||||
|
||||
```sh
|
||||
npx @matthiesenxyz/create-astro-ghostcms <template> <project_directory>
|
||||
```
|
||||
|
||||
## Available templates
|
||||
|
||||
| Template | Description |
|
||||
| -------- | ----------------------------------------------------- |
|
||||
| `basic` | Basic Setup with astro-ghostcms and theme-default |
|
|
@ -0,0 +1,15 @@
|
|||
#!/usr/bin/env node
|
||||
// biome-ignore lint/suspicious/noRedundantUseStrict: <explanation>
|
||||
'use strict';
|
||||
|
||||
const currentVersion = process.versions.node;
|
||||
const requiredMajorVersion = parseInt(currentVersion.split('.')[0], 10);
|
||||
const minimumMajorVersion = 18;
|
||||
|
||||
if (requiredMajorVersion < minimumMajorVersion) {
|
||||
console.error(`Node.js v${currentVersion} is out of date and unsupported!`);
|
||||
console.error(`Please use Node.js v${minimumMajorVersion} or higher.`);
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
import('./src/main.js').then(({ main }) => main());
|
|
@ -0,0 +1,9 @@
|
|||
export interface Context {
|
||||
dryRun: boolean;
|
||||
installDeps: boolean;
|
||||
initGitRepo: boolean;
|
||||
pkgManager: "npm" | "yarn" | "pnpm" | null;
|
||||
args: string[];
|
||||
}
|
||||
|
||||
export type Template = "basic";
|
|
@ -0,0 +1,71 @@
|
|||
{
|
||||
"name": "@matthiesenxyz/create-astro-ghostcms",
|
||||
"version": "0.0.1",
|
||||
"description": "Utility to quickly get started with our Integration and astro",
|
||||
"type": "module",
|
||||
"main": "./create-astro-ghostcms.mjs",
|
||||
"bin": {
|
||||
"create-astro-ghostcms": "./create-astro-ghostcms.mjs"
|
||||
},
|
||||
"exports": {
|
||||
".": "./create-astro-ghostcms.mjs"
|
||||
},
|
||||
"scripts": {
|
||||
"dryrun": "node ./create-astro-ghostcms.mjs --dry",
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
},
|
||||
"sideEffects": false,
|
||||
"author": {
|
||||
"email": "adam@matthiesen.xyz",
|
||||
"name": "Adam Matthiesen - MatthiesenXYZ",
|
||||
"url": "https://matthiesen.xyz"
|
||||
},
|
||||
"homepage": "https://astro-ghostcms.xyz/",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/MatthiesenXYZ/astro-ghostcms.git"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/MatthiesenXYZ/astro-ghostcms/issues",
|
||||
"email": "issues@astro-ghostcms.xyz"
|
||||
},
|
||||
"license": "MIT",
|
||||
"files": [
|
||||
"src",
|
||||
"create-astro-ghostcms",
|
||||
"index.d.ts",
|
||||
"types.d.ts",
|
||||
"README.md",
|
||||
"LICENSE"
|
||||
],
|
||||
"dependencies": {
|
||||
"@clack/prompts": "^0.7.0",
|
||||
"picocolors": "^1.0.0",
|
||||
"arg": "^5.0.2",
|
||||
"execa": "^7.0.0",
|
||||
"fs-extra": "^11.1.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/fs-extra": "^11.0.1",
|
||||
"@types/gunzip-maybe": "^1.4.0",
|
||||
"@types/node": "^18.14.1",
|
||||
"@types/tar-fs": "^2.0.1",
|
||||
"@typescript-eslint/eslint-plugin": "^6.19.0",
|
||||
"@typescript-eslint/parser": "^6.19.0",
|
||||
"eslint": "^8.56.0",
|
||||
"eslint-config-prettier": "^9.1.0",
|
||||
"eslint-import-resolver-node": "^0.3.7",
|
||||
"eslint-import-resolver-typescript": "^3.5.3",
|
||||
"prettier": "^2.8.4",
|
||||
"typescript": "^5.3.3",
|
||||
"vitest": "^1.1.0",
|
||||
"vite": "^5.0.12",
|
||||
"vite-tsconfig-paths": "^4.2.2"
|
||||
},
|
||||
"publishConfig": {
|
||||
"access": "public"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=18.14.1"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,61 @@
|
|||
import path from "node:path";
|
||||
import os from "node:os";
|
||||
import * as prompts from "@clack/prompts";
|
||||
import color from "picocolors";
|
||||
import { fileURLToPath } from "node:url";
|
||||
|
||||
/**
|
||||
* @param {string} url
|
||||
*/
|
||||
export function getModulePaths(url) {
|
||||
const pathname = fileURLToPath(url);
|
||||
const parts = pathname.split("/");
|
||||
const basename = parts.pop();
|
||||
const dirname = parts.join(path.sep);
|
||||
return { pathname, dirname, basename };
|
||||
}
|
||||
|
||||
/**
|
||||
* @returns {never}
|
||||
*/
|
||||
export function exitPrompt() {
|
||||
prompts.cancel(color.red("Operation Cancelled"));
|
||||
process.exit(0);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {string} str
|
||||
*/
|
||||
export function isPathname(str) {
|
||||
return str.includes(path.sep);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {string} pathname
|
||||
*/
|
||||
export function normalizePath(pathname) {
|
||||
if (os.platform() === "win32") {
|
||||
return path.win32.normalize(pathname);
|
||||
}
|
||||
return path.normalize(pathname);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {number} ms
|
||||
*/
|
||||
export async function wait(ms) {
|
||||
return new Promise((resolve) => setTimeout(resolve, ms));
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param {string} str
|
||||
* @returns {str is PackageManager}
|
||||
*/
|
||||
export function isPackageManager(str) {
|
||||
return str === "npm" || str === "yarn" || str === "pnpm";
|
||||
}
|
||||
|
||||
/**
|
||||
* @typedef {import("../../types").PackageManager} PackageManager
|
||||
*/
|
|
@ -0,0 +1,113 @@
|
|||
import arg from "arg";
|
||||
import * as prompts from "@clack/prompts";
|
||||
import { exitPrompt, isPackageManager } from "./lib/utils.js";
|
||||
import { createBasic } from "./runners/basic.js";
|
||||
import color from 'picocolors';
|
||||
|
||||
|
||||
export async function main() {
|
||||
const exit = () => process.exit(0);
|
||||
process.on("SIGINT", exit);
|
||||
process.on("SIGTERM", exit);
|
||||
|
||||
console.clear();
|
||||
|
||||
const argv = process.argv.slice(2).filter((arg) => arg !== "--");
|
||||
|
||||
const flags = arg(
|
||||
{
|
||||
"--help": Boolean,
|
||||
"--install": Boolean,
|
||||
"--git": Boolean,
|
||||
"--dry": Boolean,
|
||||
"--pkg-manager": String,
|
||||
"-h": "--help",
|
||||
"-i": "--install",
|
||||
"-g": "--git",
|
||||
"-p": "--pkg-manager",
|
||||
},
|
||||
{ argv, permissive: true }
|
||||
);
|
||||
const {
|
||||
"--help": help,
|
||||
"--install": installDeps,
|
||||
"--git": initGitRepo,
|
||||
"--dry": dryRun,
|
||||
"--pkg-manager": pkgManager,
|
||||
} = flags;
|
||||
|
||||
// 0. Show help text and bail
|
||||
if (help) {
|
||||
console.log(getHelp());
|
||||
return;
|
||||
}
|
||||
|
||||
// 1. Say hello!
|
||||
prompts.intro(color.bgMagenta(color.black(` ${color.bold("Astro-GhostCMS Create Utility - By MatthiesenXYZ")} ${color.italic(dryRun ? "[Dry Run] ":" ")}`)))
|
||||
|
||||
// 2. Get template to set up
|
||||
let [template, ...args] = flags._;
|
||||
if (template && !isValidTemplate(template)) {
|
||||
prompts.log.warning(`"${template}" isn't a valid template`);
|
||||
template = null;
|
||||
}
|
||||
if (!template) {
|
||||
const answer = await prompts.select({
|
||||
message: "Which template would you like to use?",
|
||||
options: [
|
||||
{
|
||||
value: "basic",
|
||||
label: "Basic - Integration w/ Default Theme"
|
||||
},
|
||||
],
|
||||
initialValue: "basic",
|
||||
});
|
||||
if (prompts.isCancel(answer)) exitPrompt();
|
||||
template = answer;
|
||||
}
|
||||
|
||||
// 2. Construct context to pass to template functions
|
||||
/** @type {Context} */
|
||||
const ctx = {
|
||||
dryRun,
|
||||
installDeps,
|
||||
initGitRepo,
|
||||
pkgManager: isPackageManager(pkgManager) ? pkgManager : null,
|
||||
args,
|
||||
};
|
||||
|
||||
// 3. Call template functions
|
||||
switch (template) {
|
||||
case "basic":
|
||||
await createBasic(ctx).catch(console.error).then(success);
|
||||
break;
|
||||
default:
|
||||
throw new Error(`Unknown template: ${template}`);
|
||||
}
|
||||
|
||||
// 4. Huzzah!
|
||||
prompts.outro(color.reset(`Problems? ${color.underline(color.cyan('https://github.com/MatthiesenXYZ/astro-ghostcms/issues'))}`));
|
||||
}
|
||||
|
||||
function success() {
|
||||
prompts.note("Dont forget to modify your .env file for YOUR ghost install!");
|
||||
prompts.outro(color.green("Deployment Complete!"));
|
||||
}
|
||||
|
||||
function getHelp() {
|
||||
return `Need Help? Check the Docs! ${color.underline(color.cyan('https://astro-ghostcms.xyz/docs'))}`;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {string|null|undefined} template
|
||||
* @returns {template is Template}
|
||||
*/
|
||||
function isValidTemplate(template) {
|
||||
return ["basic"].includes(template);
|
||||
}
|
||||
|
||||
/**
|
||||
* @typedef {import("../types").Template} Template
|
||||
* @typedef {import("../types").PackageManager} PackageManager
|
||||
* @typedef {import("../types").Context} Context
|
||||
*/
|
|
@ -0,0 +1,224 @@
|
|||
import path from "node:path";
|
||||
import fse from "fs-extra";
|
||||
import { execa } from "execa";
|
||||
import * as prompts from "@clack/prompts";
|
||||
import { exitPrompt, getModulePaths, isPathname,
|
||||
normalizePath, wait } from "../lib/utils.js";
|
||||
|
||||
/** @param {Context} ctx */
|
||||
export async function createBasic(ctx) {
|
||||
let { args, dryRun, initGitRepo, installDeps } = ctx;
|
||||
|
||||
const spinner = prompts.spinner();
|
||||
let cwd = process.cwd();
|
||||
|
||||
// 1. Set up project directory
|
||||
const project = await getProjectDetails(args[0], { cwd });
|
||||
if (dryRun) {
|
||||
await wait(1);
|
||||
} else {
|
||||
await fse.ensureDir(project.pathname);
|
||||
}
|
||||
|
||||
// 2. Create the damned thing
|
||||
cwd = project.pathname;
|
||||
const relativePath = path.relative(process.cwd(), project.pathname);
|
||||
spinner.start(`Creating a new Astro-GhostCMS project in ${relativePath}`);
|
||||
if (dryRun) {
|
||||
await wait(2000);
|
||||
} else {
|
||||
await createApp(project.name, project.pathname, {
|
||||
onError(error) {
|
||||
spinner.stop("Failed to create new project");
|
||||
prompts.cancel();
|
||||
console.error(error);
|
||||
process.exit(1);
|
||||
},
|
||||
});
|
||||
}
|
||||
spinner.stop(`New Astro-GhostCMS project '${project.name}' created 🚀`);
|
||||
const fCheck = await prompts.group({
|
||||
initGitRepo: () => prompts.confirm({
|
||||
message: "Initialize a Git repository?",
|
||||
initialValue: false,
|
||||
}),
|
||||
installDeps: () => prompts.confirm({
|
||||
message: "Install dependencies? (Recommended)",
|
||||
initialValue: false,
|
||||
})
|
||||
});
|
||||
|
||||
initGitRepo = fCheck.initGitRepo ?? initGitRepo;
|
||||
// 3. Initialize git repo
|
||||
if (initGitRepo) {
|
||||
if (dryRun) {
|
||||
await wait(1);
|
||||
} else {
|
||||
await exec("git", ["init"], { cwd });
|
||||
}
|
||||
prompts.log.success("Initialized Git repository");
|
||||
} else {
|
||||
prompts.log.info("Skipped Git initialization");
|
||||
}
|
||||
|
||||
// 4. Install dependencies
|
||||
installDeps = fCheck.installDeps ?? installDeps;
|
||||
const pm = ctx.pkgManager ?? "pnpm";
|
||||
if (installDeps) {
|
||||
spinner.start(`Installing dependencies with ${pm}`);
|
||||
if (dryRun) {
|
||||
await wait(1);
|
||||
} else {
|
||||
await installDependencies(pm, { cwd });
|
||||
}
|
||||
spinner.stop(`Dependencies installed with ${pm}`);
|
||||
} else {
|
||||
prompts.log.info("Skipped dependency installation");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param {string} projectName
|
||||
* @param {string} projectPathname
|
||||
* @param {{ onError: (err: unknown) => any }} opts
|
||||
*/
|
||||
async function createApp(projectName, projectPathname, { onError }) {
|
||||
const { dirname } = getModulePaths(import.meta.url);
|
||||
const templatesDir = path.resolve(dirname, "src", "templates");
|
||||
const sharedTemplateDir = path.join(templatesDir, "_shared");
|
||||
const basicTemplateDir = path.join(templatesDir, "basic");
|
||||
|
||||
await fse.ensureDir(projectPathname);
|
||||
|
||||
// TODO: Detect if project directory is empty, otherwise we
|
||||
// can't create a new project here.
|
||||
await fse.copy(basicTemplateDir, projectPathname);
|
||||
|
||||
// Copy misc files from shared
|
||||
const filesToCopy = [
|
||||
{
|
||||
src: path.join(sharedTemplateDir, ".env"),
|
||||
dest: path.join(projectPathname, ".env"),
|
||||
},
|
||||
];
|
||||
await Promise.all(
|
||||
filesToCopy.map(async ({ src, dest }) => await fse.copy(src, dest))
|
||||
);
|
||||
|
||||
/** @type {Array<{ pathname: string; getUpdates: (contents: string) => string }>} */
|
||||
const filesToUpdate = [
|
||||
{
|
||||
pathname: path.join(projectPathname, "package.json"),
|
||||
getUpdates: updateProjectName,
|
||||
},
|
||||
];
|
||||
await Promise.all(
|
||||
filesToUpdate.map(async ({ pathname, getUpdates }) => {
|
||||
const contents = await fse.readFile(pathname, "utf-8");
|
||||
const updatedContents = getUpdates(contents);
|
||||
await fse.writeFile(pathname, updatedContents, "utf-8");
|
||||
})
|
||||
);
|
||||
|
||||
/** @param {string} contents */
|
||||
function updateProjectName(contents) {
|
||||
return contents.replace(/{{PROJECT_NAME}}/g, projectName);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {string|undefined} projectNameInput
|
||||
* @param {{ cwd: string }} opts
|
||||
*/
|
||||
async function getProjectDetails(projectNameInput, opts) {
|
||||
let projectName = projectNameInput;
|
||||
if (!projectName) {
|
||||
const defaultProjectName = "my-astro-ghost";
|
||||
let answer = await prompts.text({
|
||||
message: "Where would you like to create your project?",
|
||||
placeholder: `.${path.sep}${defaultProjectName}`,
|
||||
});
|
||||
if (prompts.isCancel(answer)) exitPrompt();
|
||||
|
||||
answer = answer?.trim();
|
||||
projectName = answer || defaultProjectName;
|
||||
}
|
||||
|
||||
/** @type {string} */
|
||||
let pathname;
|
||||
|
||||
if (isPathname(projectName)) {
|
||||
const dir = path.resolve(opts.cwd, path.dirname(normalizePath(projectName)));
|
||||
projectName = toValidProjectName(path.basename(projectName));
|
||||
pathname = path.join(dir, projectName);
|
||||
} else {
|
||||
projectName = toValidProjectName(projectName);
|
||||
pathname = path.resolve(opts.cwd, projectName);
|
||||
}
|
||||
|
||||
return {
|
||||
name: projectName,
|
||||
pathname,
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {string} command
|
||||
* @param {readonly string[]} args
|
||||
* @param {{ cwd: string }} options
|
||||
* @returns {Promise<{ code: number | null; signal: NodeJS.Signals | null }>}
|
||||
*/
|
||||
async function exec(command, args, options) {
|
||||
const installExec = execa(command, ["init"], { ...options, stdio: "ignore" });
|
||||
return new Promise((resolve, reject) => {
|
||||
installExec.on("error", (error) => reject(error));
|
||||
installExec.on("close", (code, signal) => resolve({ code, signal }));
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {"npm" | "yarn" | "pnpm"} packageManager
|
||||
* @param {{ cwd: string }} opts
|
||||
* @returns
|
||||
*/
|
||||
async function installDependencies(packageManager, { cwd }) {
|
||||
const installExec = execa(packageManager, ["install"], { cwd });
|
||||
return new Promise((resolve, reject) => {
|
||||
installExec.on("error", (error) => reject(error));
|
||||
installExec.on("close", () => resolve());
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {string} projectName
|
||||
*/
|
||||
function toValidProjectName(projectName) {
|
||||
if (isValidProjectName(projectName)) {
|
||||
return projectName;
|
||||
}
|
||||
return projectName
|
||||
.trim()
|
||||
.toLowerCase()
|
||||
.replace(/\s+/g, "-")
|
||||
.replace(/^[._]/, "")
|
||||
.replace(/[^a-z\d\-~]+/g, "-")
|
||||
.replace(/^-+/, "")
|
||||
.replace(/-+$/, "");
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {string} projectName
|
||||
*/
|
||||
function isValidProjectName(projectName) {
|
||||
return /^(?:@[a-z\d\-*~][a-z\d\-*._~]*\/)?[a-z\d\-~][a-z\d\-._~]*$/.test(
|
||||
projectName
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @typedef {import("../../types.js").Template} Template
|
||||
* @typedef {import("../../types.js").PackageManager} PackageManager
|
||||
* @typedef {import("../../types.js").Context} Context
|
||||
* @typedef {import("../../types.js").Serializable} Serializable
|
||||
*/
|
|
@ -0,0 +1,2 @@
|
|||
CONTENT_API_KEY=a33da3965a3a9fb2c6b3f63b48
|
||||
CONTENT_API_URL=https://ghostdemo.matthiesen.xyz
|
|
@ -0,0 +1,21 @@
|
|||
# build output
|
||||
dist/
|
||||
|
||||
# generated types
|
||||
.astro/
|
||||
|
||||
# dependencies
|
||||
node_modules/
|
||||
|
||||
# logs
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
pnpm-debug.log*
|
||||
|
||||
# environment variables
|
||||
.env
|
||||
.env.production
|
||||
|
||||
# macOS-specific files
|
||||
.DS_Store
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"recommendations": ["astro-build.astro-vscode"],
|
||||
"unwantedRecommendations": []
|
||||
}
|
|
@ -0,0 +1,11 @@
|
|||
{
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
{
|
||||
"command": "./node_modules/.bin/astro dev",
|
||||
"name": "Development server",
|
||||
"request": "launch",
|
||||
"type": "node-terminal"
|
||||
}
|
||||
]
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2024 Matthiesen XYZ
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
|
@ -0,0 +1,10 @@
|
|||
import { defineConfig } from 'astro/config';
|
||||
import GhostCMS from "@matthiesenxyz/astro-ghostcms";
|
||||
|
||||
// https://astro.build/config
|
||||
export default defineConfig({
|
||||
site: "https://example.com/",
|
||||
integrations: [GhostCMS({
|
||||
ghostURL: 'https://ghostdemo.matthiesen.xyz'
|
||||
})]
|
||||
});
|
|
@ -0,0 +1,22 @@
|
|||
{
|
||||
"name": "{{PROJECT_NAME}}",
|
||||
"type": "module",
|
||||
"version": "0.0.1",
|
||||
"scripts": {
|
||||
"dev": "astro dev",
|
||||
"start": "astro dev",
|
||||
"build": "astro check && astro build",
|
||||
"preview": "astro preview",
|
||||
"astro": "astro"
|
||||
},
|
||||
"dependencies": {
|
||||
"astro": "^4.2.4",
|
||||
"@matthiesenxyz/astro-ghostcms": "^3.1.5",
|
||||
"@matthiesenxyz/astro-ghostcms-theme-default": "^0.1.5"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@astrojs/check": "^0.4.1",
|
||||
"typescript": "^5.3.3",
|
||||
"sass": "^1.70.0"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 128 128">
|
||||
<path d="M50.4 78.5a75.1 75.1 0 0 0-28.5 6.9l24.2-65.7c.7-2 1.9-3.2 3.4-3.2h29c1.5 0 2.7 1.2 3.4 3.2l24.2 65.7s-11.6-7-28.5-7L67 45.5c-.4-1.7-1.6-2.8-2.9-2.8-1.3 0-2.5 1.1-2.9 2.7L50.4 78.5Zm-1.1 28.2Zm-4.2-20.2c-2 6.6-.6 15.8 4.2 20.2a17.5 17.5 0 0 1 .2-.7 5.5 5.5 0 0 1 5.7-4.5c2.8.1 4.3 1.5 4.7 4.7.2 1.1.2 2.3.2 3.5v.4c0 2.7.7 5.2 2.2 7.4a13 13 0 0 0 5.7 4.9v-.3l-.2-.3c-1.8-5.6-.5-9.5 4.4-12.8l1.5-1a73 73 0 0 0 3.2-2.2 16 16 0 0 0 6.8-11.4c.3-2 .1-4-.6-6l-.8.6-1.6 1a37 37 0 0 1-22.4 2.7c-5-.7-9.7-2-13.2-6.2Z" />
|
||||
<style>
|
||||
path { fill: #000; }
|
||||
@media (prefers-color-scheme: dark) {
|
||||
path { fill: #FFF; }
|
||||
}
|
||||
</style>
|
||||
</svg>
|
After Width: | Height: | Size: 749 B |
|
@ -0,0 +1,9 @@
|
|||
/// <reference types="astro/client" />
|
||||
interface ImportMetaEnv {
|
||||
readonly CONTENT_API_KEY: string
|
||||
readonly CONTENT_API_URL: string
|
||||
}
|
||||
|
||||
interface ImportMeta {
|
||||
readonly env: ImportMetaEnv;
|
||||
}
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"extends": "astro/tsconfigs/strict"
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
{
|
||||
"$schema": "https://json.schemastore.org/tsconfig",
|
||||
"display": "Default",
|
||||
"include": ["."],
|
||||
"exclude": ["node_modules", "templates/react"],
|
||||
"compilerOptions": {
|
||||
"allowJs": true,
|
||||
"allowSyntheticDefaultImports": true,
|
||||
"checkJs": true,
|
||||
"lib": ["ES2022", "DOM", "DOM.Iterable"],
|
||||
"module": "ESNext",
|
||||
"target": "ES2022",
|
||||
"noEmit": true,
|
||||
"declaration": false,
|
||||
"downlevelIteration": true,
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"esModuleInterop": true,
|
||||
"inlineSources": false,
|
||||
"isolatedModules": true,
|
||||
"moduleResolution": "node",
|
||||
"skipLibCheck": true,
|
||||
"strict": true,
|
||||
// Non-null assertions are a PITA when checking JS files
|
||||
"strictNullChecks": false
|
||||
}
|
||||
}
|
|
@ -0,0 +1,3 @@
|
|||
export * from "./index";
|
||||
export type PackageManager = "npm" | "yarn" | "pnpm";
|
||||
export type Serializable = string | object | number | boolean | bigint;
|
648
pnpm-lock.yaml
648
pnpm-lock.yaml
|
@ -16,7 +16,7 @@ importers:
|
|||
version: 2.27.1
|
||||
vitest:
|
||||
specifier: ^1.1.0
|
||||
version: 1.2.1(@types/node@20.11.6)
|
||||
version: 1.2.1(@types/node@18.19.10)
|
||||
vitest-fetch-mock:
|
||||
specifier: ^0.2.2
|
||||
version: 0.2.2(vitest@1.2.1)
|
||||
|
@ -24,14 +24,14 @@ importers:
|
|||
demo:
|
||||
dependencies:
|
||||
'@matthiesenxyz/astro-ghostcms':
|
||||
specifier: 3.1.4
|
||||
specifier: 3.1.5
|
||||
version: link:../packages/astro-ghostcms
|
||||
'@matthiesenxyz/astro-ghostcms-theme-default':
|
||||
specifier: 0.1.3
|
||||
version: 0.1.3(astro@4.2.4)(typescript@5.3.3)
|
||||
specifier: 0.1.5
|
||||
version: link:../packages/astro-ghostcms-theme-default
|
||||
astro:
|
||||
specifier: ^4.2.4
|
||||
version: 4.2.4(@types/node@20.11.6)(typescript@5.3.3)
|
||||
version: 4.2.4(typescript@5.3.3)
|
||||
devDependencies:
|
||||
'@astrojs/check':
|
||||
specifier: ^0.4.1
|
||||
|
@ -116,7 +116,7 @@ importers:
|
|||
packages/astro-ghostcms-theme-default:
|
||||
dependencies:
|
||||
'@matthiesenxyz/astro-ghostcms':
|
||||
specifier: ^3.1.3
|
||||
specifier: ^3.1.5
|
||||
version: link:../astro-ghostcms
|
||||
astro:
|
||||
specifier: ^4.2.1
|
||||
|
@ -124,17 +124,81 @@ importers:
|
|||
astro-font:
|
||||
specifier: ^0.0.77
|
||||
version: 0.0.77
|
||||
sass:
|
||||
specifier: ^1.70.0
|
||||
version: 1.70.0
|
||||
devDependencies:
|
||||
'@astrojs/check':
|
||||
specifier: ^0.4.1
|
||||
version: 0.4.1(prettier-plugin-astro@0.13.0)(prettier@3.2.4)(typescript@5.3.3)
|
||||
sass:
|
||||
specifier: ^1.70.0
|
||||
version: 1.70.0
|
||||
typescript:
|
||||
specifier: ^5.3.3
|
||||
version: 5.3.3
|
||||
|
||||
packages/create-astro-ghostcms:
|
||||
dependencies:
|
||||
'@clack/prompts':
|
||||
specifier: ^0.7.0
|
||||
version: 0.7.0
|
||||
arg:
|
||||
specifier: ^5.0.2
|
||||
version: 5.0.2
|
||||
execa:
|
||||
specifier: ^7.0.0
|
||||
version: 7.2.0
|
||||
fs-extra:
|
||||
specifier: ^11.1.0
|
||||
version: 11.2.0
|
||||
picocolors:
|
||||
specifier: ^1.0.0
|
||||
version: 1.0.0
|
||||
devDependencies:
|
||||
'@types/fs-extra':
|
||||
specifier: ^11.0.1
|
||||
version: 11.0.4
|
||||
'@types/gunzip-maybe':
|
||||
specifier: ^1.4.0
|
||||
version: 1.4.2
|
||||
'@types/node':
|
||||
specifier: ^18.14.1
|
||||
version: 18.19.10
|
||||
'@types/tar-fs':
|
||||
specifier: ^2.0.1
|
||||
version: 2.0.4
|
||||
'@typescript-eslint/eslint-plugin':
|
||||
specifier: ^6.19.0
|
||||
version: 6.19.1(@typescript-eslint/parser@6.19.1)(eslint@8.56.0)(typescript@5.3.3)
|
||||
'@typescript-eslint/parser':
|
||||
specifier: ^6.19.0
|
||||
version: 6.19.1(eslint@8.56.0)(typescript@5.3.3)
|
||||
eslint:
|
||||
specifier: ^8.56.0
|
||||
version: 8.56.0
|
||||
eslint-config-prettier:
|
||||
specifier: ^9.1.0
|
||||
version: 9.1.0(eslint@8.56.0)
|
||||
eslint-import-resolver-node:
|
||||
specifier: ^0.3.7
|
||||
version: 0.3.9
|
||||
eslint-import-resolver-typescript:
|
||||
specifier: ^3.5.3
|
||||
version: 3.6.1(@typescript-eslint/parser@6.19.1)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.56.0)
|
||||
prettier:
|
||||
specifier: ^2.8.4
|
||||
version: 2.8.8
|
||||
typescript:
|
||||
specifier: ^5.3.3
|
||||
version: 5.3.3
|
||||
vite:
|
||||
specifier: ^5.0.12
|
||||
version: 5.0.12(@types/node@18.19.10)
|
||||
vite-tsconfig-paths:
|
||||
specifier: ^4.2.2
|
||||
version: 4.3.1(typescript@5.3.3)(vite@5.0.12)
|
||||
vitest:
|
||||
specifier: ^1.1.0
|
||||
version: 1.2.1(@types/node@18.19.10)
|
||||
|
||||
packages/tsconfig: {}
|
||||
|
||||
playground:
|
||||
|
@ -147,7 +211,7 @@ importers:
|
|||
version: link:../packages/astro-ghostcms-theme-default
|
||||
astro:
|
||||
specifier: ^4.2.4
|
||||
version: 4.2.4(@types/node@20.11.6)(typescript@5.3.3)
|
||||
version: 4.2.4(typescript@5.3.3)
|
||||
devDependencies:
|
||||
'@astrojs/check':
|
||||
specifier: ^0.4.1
|
||||
|
@ -868,6 +932,23 @@ packages:
|
|||
prettier: 2.8.8
|
||||
dev: true
|
||||
|
||||
/@clack/core@0.3.3:
|
||||
resolution: {integrity: sha512-5ZGyb75BUBjlll6eOa1m/IZBxwk91dooBWhPSL67sWcLS0zt9SnswRL0l26TVdBhb0wnWORRxUn//uH6n4z7+A==}
|
||||
dependencies:
|
||||
picocolors: 1.0.0
|
||||
sisteransi: 1.0.5
|
||||
dev: false
|
||||
|
||||
/@clack/prompts@0.7.0:
|
||||
resolution: {integrity: sha512-0MhX9/B4iL6Re04jPrttDm+BsP8y6mS7byuv0BvXgdXhbV5PdlsHt55dvNsuBCPZ7xq1oTAOOuotR9NFbQyMSA==}
|
||||
dependencies:
|
||||
'@clack/core': 0.3.3
|
||||
picocolors: 1.0.0
|
||||
sisteransi: 1.0.5
|
||||
dev: false
|
||||
bundledDependencies:
|
||||
- is-unicode-supported
|
||||
|
||||
/@ctrl/tinycolor@3.6.1:
|
||||
resolution: {integrity: sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA==}
|
||||
engines: {node: '>=10'}
|
||||
|
@ -1411,53 +1492,6 @@ packages:
|
|||
read-yaml-file: 1.1.0
|
||||
dev: true
|
||||
|
||||
/@matthiesenxyz/astro-ghostcms-theme-default@0.1.3(astro@4.2.4)(typescript@5.3.3):
|
||||
resolution: {integrity: sha512-ZWo5L5ZSYTWYcQjauDEQBiyH2nqnmoBs8F/cCttRzE6ms5LrWQ65nMuWQQomp5j/kMBBn2upVIi6bEUgoCxt6w==}
|
||||
peerDependencies:
|
||||
astro: ^4.2.1
|
||||
dependencies:
|
||||
'@matthiesenxyz/astro-ghostcms': 3.1.4(astro@4.2.4)(typescript@5.3.3)
|
||||
astro: 4.2.4(@types/node@20.11.6)(typescript@5.3.3)
|
||||
astro-font: 0.0.77
|
||||
transitivePeerDependencies:
|
||||
- '@types/node'
|
||||
- less
|
||||
- lightningcss
|
||||
- sass
|
||||
- stylus
|
||||
- sugarss
|
||||
- supports-color
|
||||
- terser
|
||||
- typescript
|
||||
dev: false
|
||||
|
||||
/@matthiesenxyz/astro-ghostcms@3.1.4(astro@4.2.4)(typescript@5.3.3):
|
||||
resolution: {integrity: sha512-8jXKKG8IhL1M97+p4rjh8gW+6WM0uzQQEA6SARn68HtB3w7rek3rzfnbf/OsXrP9H8LHgYqAUFvZ1AYMWYVnJw==}
|
||||
peerDependencies:
|
||||
astro: ^4.2.3
|
||||
dependencies:
|
||||
'@astrojs/rss': 4.0.3
|
||||
'@astrojs/sitemap': 3.0.5
|
||||
'@matthiesenxyz/astro-ghostcms-theme-default': 0.1.3(astro@4.2.4)(typescript@5.3.3)
|
||||
'@ts-ghost/core-api': 5.1.2
|
||||
astro: 4.2.4(@types/node@20.11.6)(typescript@5.3.3)
|
||||
astro-robots-txt: 1.0.0
|
||||
vite: 5.0.12(@types/node@20.11.6)
|
||||
vite-tsconfig-paths: 4.3.1(typescript@5.3.3)(vite@5.0.12)
|
||||
zod: 3.22.4
|
||||
zod-validation-error: 3.0.0(zod@3.22.4)
|
||||
transitivePeerDependencies:
|
||||
- '@types/node'
|
||||
- less
|
||||
- lightningcss
|
||||
- sass
|
||||
- stylus
|
||||
- sugarss
|
||||
- supports-color
|
||||
- terser
|
||||
- typescript
|
||||
dev: false
|
||||
|
||||
/@mdx-js/mdx@3.0.0:
|
||||
resolution: {integrity: sha512-Icm0TBKBLYqroYbNW3BPnzMGn+7mwpQOK310aZ7+fkCtiU3aqv2cdcX+nd0Ydo3wI5Rx8bX2Z2QmGb/XcAClCw==}
|
||||
dependencies:
|
||||
|
@ -1707,6 +1741,19 @@ packages:
|
|||
/@types/estree@1.0.5:
|
||||
resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==}
|
||||
|
||||
/@types/fs-extra@11.0.4:
|
||||
resolution: {integrity: sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==}
|
||||
dependencies:
|
||||
'@types/jsonfile': 6.1.4
|
||||
'@types/node': 18.19.10
|
||||
dev: true
|
||||
|
||||
/@types/gunzip-maybe@1.4.2:
|
||||
resolution: {integrity: sha512-2uqXZg1jTCKE1Pjbab8qb74+f2+i9h/jz8rQ+jRR+zaNJF75zWwrpbX8/TjF4m56m3KFOg9umHdCJ074KwiVxg==}
|
||||
dependencies:
|
||||
'@types/node': 18.19.10
|
||||
dev: true
|
||||
|
||||
/@types/hast@2.3.9:
|
||||
resolution: {integrity: sha512-pTHyNlaMD/oKJmS+ZZUyFUcsZeBZpC0lmGquw98CqRVNgAdJZJeD7GoeLiT6Xbx5rU9VCjSt0RwEvDgzh4obFw==}
|
||||
dependencies:
|
||||
|
@ -1723,6 +1770,16 @@ packages:
|
|||
resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
|
||||
dev: true
|
||||
|
||||
/@types/json5@0.0.29:
|
||||
resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==}
|
||||
dev: true
|
||||
|
||||
/@types/jsonfile@6.1.4:
|
||||
resolution: {integrity: sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==}
|
||||
dependencies:
|
||||
'@types/node': 18.19.10
|
||||
dev: true
|
||||
|
||||
/@types/mdast@4.0.3:
|
||||
resolution: {integrity: sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg==}
|
||||
dependencies:
|
||||
|
@ -1755,6 +1812,11 @@ packages:
|
|||
resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==}
|
||||
dev: false
|
||||
|
||||
/@types/node@18.19.10:
|
||||
resolution: {integrity: sha512-IZD8kAM02AW1HRDTPOlz3npFava678pr8Ie9Vp8uRhBROXAv8MXT2pCnGZZAKYdromsNQLHQcfWQ6EOatVLtqA==}
|
||||
dependencies:
|
||||
undici-types: 5.26.5
|
||||
|
||||
/@types/node@20.11.6:
|
||||
resolution: {integrity: sha512-+EOokTnksGVgip2PbYbr3xnR7kZigh4LbybAfBAw5BpnQ+FqBYUsvCEjYd70IXKlbohQ64mzEYmMtlWUY8q//Q==}
|
||||
dependencies:
|
||||
|
@ -1778,6 +1840,19 @@ packages:
|
|||
resolution: {integrity: sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==}
|
||||
dev: true
|
||||
|
||||
/@types/tar-fs@2.0.4:
|
||||
resolution: {integrity: sha512-ipPec0CjTmVDWE+QKr9cTmIIoTl7dFG/yARCM5MqK8i6CNLIG1P8x4kwDsOQY1ChZOZjH0wO9nvfgBvWl4R3kA==}
|
||||
dependencies:
|
||||
'@types/node': 18.19.10
|
||||
'@types/tar-stream': 3.1.3
|
||||
dev: true
|
||||
|
||||
/@types/tar-stream@3.1.3:
|
||||
resolution: {integrity: sha512-Zbnx4wpkWBMBSu5CytMbrT5ZpMiF55qgM+EpHzR4yIDu7mv52cej8hTkOc6K+LzpkOAbxwn/m7j3iO+/l42YkQ==}
|
||||
dependencies:
|
||||
'@types/node': 18.19.10
|
||||
dev: true
|
||||
|
||||
/@types/unist@2.0.10:
|
||||
resolution: {integrity: sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==}
|
||||
dev: false
|
||||
|
@ -2146,6 +2221,17 @@ packages:
|
|||
is-array-buffer: 3.0.2
|
||||
dev: true
|
||||
|
||||
/array-includes@3.1.7:
|
||||
resolution: {integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==}
|
||||
engines: {node: '>= 0.4'}
|
||||
dependencies:
|
||||
call-bind: 1.0.5
|
||||
define-properties: 1.2.1
|
||||
es-abstract: 1.22.3
|
||||
get-intrinsic: 1.2.2
|
||||
is-string: 1.0.7
|
||||
dev: true
|
||||
|
||||
/array-iterate@2.0.1:
|
||||
resolution: {integrity: sha512-I1jXZMjAgCMmxT4qxXfPXa6SthSoE8h6gkSI9BGGNv8mP8G/v0blc+qFnZu6K42vTOiuME596QaLO0TP3Lk0xg==}
|
||||
dev: false
|
||||
|
@ -2155,6 +2241,17 @@ packages:
|
|||
engines: {node: '>=8'}
|
||||
dev: true
|
||||
|
||||
/array.prototype.findlastindex@1.2.3:
|
||||
resolution: {integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==}
|
||||
engines: {node: '>= 0.4'}
|
||||
dependencies:
|
||||
call-bind: 1.0.5
|
||||
define-properties: 1.2.1
|
||||
es-abstract: 1.22.3
|
||||
es-shim-unscopables: 1.0.2
|
||||
get-intrinsic: 1.2.2
|
||||
dev: true
|
||||
|
||||
/array.prototype.flat@1.3.2:
|
||||
resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==}
|
||||
engines: {node: '>= 0.4'}
|
||||
|
@ -2165,6 +2262,16 @@ packages:
|
|||
es-shim-unscopables: 1.0.2
|
||||
dev: true
|
||||
|
||||
/array.prototype.flatmap@1.3.2:
|
||||
resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==}
|
||||
engines: {node: '>= 0.4'}
|
||||
dependencies:
|
||||
call-bind: 1.0.5
|
||||
define-properties: 1.2.1
|
||||
es-abstract: 1.22.3
|
||||
es-shim-unscopables: 1.0.2
|
||||
dev: true
|
||||
|
||||
/arraybuffer.prototype.slice@1.0.2:
|
||||
resolution: {integrity: sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==}
|
||||
engines: {node: '>= 0.4'}
|
||||
|
@ -2475,6 +2582,88 @@ packages:
|
|||
- typescript
|
||||
dev: false
|
||||
|
||||
/astro@4.2.4(typescript@5.3.3):
|
||||
resolution: {integrity: sha512-z1f52lXkHf71M5HSLKrd5G1PH5/Zfq4kMp0iUT7Na5VHcPDma/NYFPFPewDxqV6UPmyxupj3xuooFaN3j8zaow==}
|
||||
engines: {node: '>=18.14.1', npm: '>=6.14.0'}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
'@astrojs/compiler': 2.5.0
|
||||
'@astrojs/internal-helpers': 0.2.1
|
||||
'@astrojs/markdown-remark': 4.2.0
|
||||
'@astrojs/telemetry': 3.0.4
|
||||
'@babel/core': 7.23.7
|
||||
'@babel/generator': 7.23.6
|
||||
'@babel/parser': 7.23.6
|
||||
'@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.23.7)
|
||||
'@babel/traverse': 7.23.7
|
||||
'@babel/types': 7.23.6
|
||||
'@types/babel__core': 7.20.5
|
||||
acorn: 8.11.3
|
||||
aria-query: 5.3.0
|
||||
axobject-query: 4.0.0
|
||||
boxen: 7.1.1
|
||||
chokidar: 3.5.3
|
||||
ci-info: 4.0.0
|
||||
clsx: 2.1.0
|
||||
common-ancestor-path: 1.0.1
|
||||
cookie: 0.6.0
|
||||
debug: 4.3.4
|
||||
deterministic-object-hash: 2.0.2
|
||||
devalue: 4.3.2
|
||||
diff: 5.1.0
|
||||
dlv: 1.1.3
|
||||
dset: 3.1.3
|
||||
es-module-lexer: 1.4.1
|
||||
esbuild: 0.19.12
|
||||
estree-walker: 3.0.3
|
||||
execa: 8.0.1
|
||||
fast-glob: 3.3.2
|
||||
flattie: 1.1.0
|
||||
github-slugger: 2.0.0
|
||||
gray-matter: 4.0.3
|
||||
html-escaper: 3.0.3
|
||||
http-cache-semantics: 4.1.1
|
||||
js-yaml: 4.1.0
|
||||
kleur: 4.1.5
|
||||
magic-string: 0.30.5
|
||||
mdast-util-to-hast: 13.0.2
|
||||
mime: 3.0.0
|
||||
ora: 7.0.1
|
||||
p-limit: 5.0.0
|
||||
p-queue: 8.0.1
|
||||
path-to-regexp: 6.2.1
|
||||
preferred-pm: 3.1.2
|
||||
probe-image-size: 7.2.3
|
||||
prompts: 2.4.2
|
||||
rehype: 13.0.1
|
||||
resolve: 1.22.8
|
||||
semver: 7.5.4
|
||||
server-destroy: 1.0.1
|
||||
shikiji: 0.9.19
|
||||
string-width: 7.1.0
|
||||
strip-ansi: 7.1.0
|
||||
tsconfck: 3.0.1(typescript@5.3.3)
|
||||
unist-util-visit: 5.0.0
|
||||
vfile: 6.0.1
|
||||
vite: 5.0.12(@types/node@18.19.10)
|
||||
vitefu: 0.2.5(vite@5.0.12)
|
||||
which-pm: 2.1.1
|
||||
yargs-parser: 21.1.1
|
||||
zod: 3.22.4
|
||||
optionalDependencies:
|
||||
sharp: 0.32.6
|
||||
transitivePeerDependencies:
|
||||
- '@types/node'
|
||||
- less
|
||||
- lightningcss
|
||||
- sass
|
||||
- stylus
|
||||
- sugarss
|
||||
- supports-color
|
||||
- terser
|
||||
- typescript
|
||||
dev: false
|
||||
|
||||
/astrojs-compiler-sync@0.3.5(@astrojs/compiler@2.5.0):
|
||||
resolution: {integrity: sha512-y420rhIIJ2HHDkYeqKArBHSdJNIIGMztLH90KGIX3zjcJyt/cr9Z2wYA8CP5J1w6KE7xqMh0DAkhfjhNDpQb2Q==}
|
||||
engines: {node: ^14.18.0 || >=16.0.0}
|
||||
|
@ -2941,7 +3130,6 @@ packages:
|
|||
optional: true
|
||||
dependencies:
|
||||
ms: 2.1.3
|
||||
dev: false
|
||||
|
||||
/debug@4.3.4:
|
||||
resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
|
||||
|
@ -3083,6 +3271,13 @@ packages:
|
|||
resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==}
|
||||
dev: false
|
||||
|
||||
/doctrine@2.1.0:
|
||||
resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dependencies:
|
||||
esutils: 2.0.3
|
||||
dev: true
|
||||
|
||||
/doctrine@3.0.0:
|
||||
resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==}
|
||||
engines: {node: '>=6.0.0'}
|
||||
|
@ -3128,6 +3323,14 @@ packages:
|
|||
dev: false
|
||||
optional: true
|
||||
|
||||
/enhanced-resolve@5.15.0:
|
||||
resolution: {integrity: sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==}
|
||||
engines: {node: '>=10.13.0'}
|
||||
dependencies:
|
||||
graceful-fs: 4.2.11
|
||||
tapable: 2.2.1
|
||||
dev: true
|
||||
|
||||
/enquirer@2.4.1:
|
||||
resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==}
|
||||
engines: {node: '>=8.6'}
|
||||
|
@ -3286,6 +3489,69 @@ packages:
|
|||
eslint: 8.56.0
|
||||
dev: true
|
||||
|
||||
/eslint-import-resolver-node@0.3.9:
|
||||
resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==}
|
||||
dependencies:
|
||||
debug: 3.2.7
|
||||
is-core-module: 2.13.1
|
||||
resolve: 1.22.8
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.19.1)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.56.0):
|
||||
resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==}
|
||||
engines: {node: ^14.18.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
eslint: '*'
|
||||
eslint-plugin-import: '*'
|
||||
dependencies:
|
||||
debug: 4.3.4
|
||||
enhanced-resolve: 5.15.0
|
||||
eslint: 8.56.0
|
||||
eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.19.1)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0)
|
||||
eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.19.1)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0)
|
||||
fast-glob: 3.3.2
|
||||
get-tsconfig: 4.7.2
|
||||
is-core-module: 2.13.1
|
||||
is-glob: 4.0.3
|
||||
transitivePeerDependencies:
|
||||
- '@typescript-eslint/parser'
|
||||
- eslint-import-resolver-node
|
||||
- eslint-import-resolver-webpack
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/eslint-module-utils@2.8.0(@typescript-eslint/parser@6.19.1)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0):
|
||||
resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==}
|
||||
engines: {node: '>=4'}
|
||||
peerDependencies:
|
||||
'@typescript-eslint/parser': '*'
|
||||
eslint: '*'
|
||||
eslint-import-resolver-node: '*'
|
||||
eslint-import-resolver-typescript: '*'
|
||||
eslint-import-resolver-webpack: '*'
|
||||
peerDependenciesMeta:
|
||||
'@typescript-eslint/parser':
|
||||
optional: true
|
||||
eslint:
|
||||
optional: true
|
||||
eslint-import-resolver-node:
|
||||
optional: true
|
||||
eslint-import-resolver-typescript:
|
||||
optional: true
|
||||
eslint-import-resolver-webpack:
|
||||
optional: true
|
||||
dependencies:
|
||||
'@typescript-eslint/parser': 6.19.1(eslint@8.56.0)(typescript@5.3.3)
|
||||
debug: 3.2.7
|
||||
eslint: 8.56.0
|
||||
eslint-import-resolver-node: 0.3.9
|
||||
eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.19.1)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.56.0)
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/eslint-plugin-astro@0.31.3(eslint@8.56.0):
|
||||
resolution: {integrity: sha512-dxNT4cusvLiWFT0ebTd7HP9GixZbua7QYARD1ilqhJEANCSJA7RIas57vnD1PHNDCdYyTit7JU4NDPLWkcG2HA==}
|
||||
engines: {node: ^14.18.0 || >=16.0.0}
|
||||
|
@ -3304,6 +3570,41 @@ packages:
|
|||
- supports-color
|
||||
dev: true
|
||||
|
||||
/eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.19.1)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0):
|
||||
resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==}
|
||||
engines: {node: '>=4'}
|
||||
peerDependencies:
|
||||
'@typescript-eslint/parser': '*'
|
||||
eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8
|
||||
peerDependenciesMeta:
|
||||
'@typescript-eslint/parser':
|
||||
optional: true
|
||||
dependencies:
|
||||
'@typescript-eslint/parser': 6.19.1(eslint@8.56.0)(typescript@5.3.3)
|
||||
array-includes: 3.1.7
|
||||
array.prototype.findlastindex: 1.2.3
|
||||
array.prototype.flat: 1.3.2
|
||||
array.prototype.flatmap: 1.3.2
|
||||
debug: 3.2.7
|
||||
doctrine: 2.1.0
|
||||
eslint: 8.56.0
|
||||
eslint-import-resolver-node: 0.3.9
|
||||
eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.19.1)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0)
|
||||
hasown: 2.0.0
|
||||
is-core-module: 2.13.1
|
||||
is-glob: 4.0.3
|
||||
minimatch: 3.1.2
|
||||
object.fromentries: 2.0.7
|
||||
object.groupby: 1.0.1
|
||||
object.values: 1.1.7
|
||||
semver: 6.3.1
|
||||
tsconfig-paths: 3.15.0
|
||||
transitivePeerDependencies:
|
||||
- eslint-import-resolver-typescript
|
||||
- eslint-import-resolver-webpack
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/eslint-scope@7.2.2:
|
||||
resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
|
@ -3445,6 +3746,21 @@ packages:
|
|||
resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==}
|
||||
dev: false
|
||||
|
||||
/execa@7.2.0:
|
||||
resolution: {integrity: sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==}
|
||||
engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0}
|
||||
dependencies:
|
||||
cross-spawn: 7.0.3
|
||||
get-stream: 6.0.1
|
||||
human-signals: 4.3.1
|
||||
is-stream: 3.0.0
|
||||
merge-stream: 2.0.0
|
||||
npm-run-path: 5.2.0
|
||||
onetime: 6.0.0
|
||||
signal-exit: 3.0.7
|
||||
strip-final-newline: 3.0.0
|
||||
dev: false
|
||||
|
||||
/execa@8.0.1:
|
||||
resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==}
|
||||
engines: {node: '>=16.17'}
|
||||
|
@ -3607,6 +3923,15 @@ packages:
|
|||
dev: false
|
||||
optional: true
|
||||
|
||||
/fs-extra@11.2.0:
|
||||
resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==}
|
||||
engines: {node: '>=14.14'}
|
||||
dependencies:
|
||||
graceful-fs: 4.2.11
|
||||
jsonfile: 6.1.0
|
||||
universalify: 2.0.1
|
||||
dev: false
|
||||
|
||||
/fs-extra@7.0.1:
|
||||
resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==}
|
||||
engines: {node: '>=6 <7 || >=8'}
|
||||
|
@ -3680,6 +4005,11 @@ packages:
|
|||
hasown: 2.0.0
|
||||
dev: true
|
||||
|
||||
/get-stream@6.0.1:
|
||||
resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
|
||||
engines: {node: '>=10'}
|
||||
dev: false
|
||||
|
||||
/get-stream@8.0.1:
|
||||
resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==}
|
||||
engines: {node: '>=16'}
|
||||
|
@ -3692,6 +4022,12 @@ packages:
|
|||
get-intrinsic: 1.2.2
|
||||
dev: true
|
||||
|
||||
/get-tsconfig@4.7.2:
|
||||
resolution: {integrity: sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==}
|
||||
dependencies:
|
||||
resolve-pkg-maps: 1.0.0
|
||||
dev: true
|
||||
|
||||
/github-from-package@0.0.0:
|
||||
resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==}
|
||||
requiresBuild: true
|
||||
|
@ -3759,7 +4095,6 @@ packages:
|
|||
|
||||
/globrex@0.1.2:
|
||||
resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==}
|
||||
dev: false
|
||||
|
||||
/gopd@1.0.1:
|
||||
resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==}
|
||||
|
@ -4105,6 +4440,11 @@ packages:
|
|||
resolution: {integrity: sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==}
|
||||
dev: true
|
||||
|
||||
/human-signals@4.3.1:
|
||||
resolution: {integrity: sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==}
|
||||
engines: {node: '>=14.18.0'}
|
||||
dev: false
|
||||
|
||||
/human-signals@5.0.0:
|
||||
resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==}
|
||||
engines: {node: '>=16.17.0'}
|
||||
|
@ -4126,6 +4466,7 @@ packages:
|
|||
|
||||
/immutable@4.3.4:
|
||||
resolution: {integrity: sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==}
|
||||
dev: false
|
||||
|
||||
/import-fresh@3.3.0:
|
||||
resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
|
||||
|
@ -4453,6 +4794,13 @@ packages:
|
|||
resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
|
||||
dev: true
|
||||
|
||||
/json5@1.0.2:
|
||||
resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
minimist: 1.2.8
|
||||
dev: true
|
||||
|
||||
/json5@2.2.3:
|
||||
resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
|
||||
engines: {node: '>=6'}
|
||||
|
@ -4472,6 +4820,14 @@ packages:
|
|||
graceful-fs: 4.2.11
|
||||
dev: true
|
||||
|
||||
/jsonfile@6.1.0:
|
||||
resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==}
|
||||
dependencies:
|
||||
universalify: 2.0.1
|
||||
optionalDependencies:
|
||||
graceful-fs: 4.2.11
|
||||
dev: false
|
||||
|
||||
/keyv@4.5.4:
|
||||
resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
|
||||
dependencies:
|
||||
|
@ -5247,8 +5603,6 @@ packages:
|
|||
/minimist@1.2.8:
|
||||
resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
|
||||
requiresBuild: true
|
||||
dev: false
|
||||
optional: true
|
||||
|
||||
/mixme@0.5.10:
|
||||
resolution: {integrity: sha512-5H76ANWinB1H3twpJ6JY8uvAtpmFvHNArpilJAjXRKXSDDLPIMoZArw5SH0q9z+lLs8IrMw7Q2VWpWimFKFT1Q==}
|
||||
|
@ -5279,7 +5633,6 @@ packages:
|
|||
|
||||
/ms@2.1.3:
|
||||
resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
|
||||
dev: false
|
||||
|
||||
/muggle-string@0.3.1:
|
||||
resolution: {integrity: sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==}
|
||||
|
@ -5396,6 +5749,33 @@ packages:
|
|||
object-keys: 1.1.1
|
||||
dev: true
|
||||
|
||||
/object.fromentries@2.0.7:
|
||||
resolution: {integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==}
|
||||
engines: {node: '>= 0.4'}
|
||||
dependencies:
|
||||
call-bind: 1.0.5
|
||||
define-properties: 1.2.1
|
||||
es-abstract: 1.22.3
|
||||
dev: true
|
||||
|
||||
/object.groupby@1.0.1:
|
||||
resolution: {integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==}
|
||||
dependencies:
|
||||
call-bind: 1.0.5
|
||||
define-properties: 1.2.1
|
||||
es-abstract: 1.22.3
|
||||
get-intrinsic: 1.2.2
|
||||
dev: true
|
||||
|
||||
/object.values@1.1.7:
|
||||
resolution: {integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==}
|
||||
engines: {node: '>= 0.4'}
|
||||
dependencies:
|
||||
call-bind: 1.0.5
|
||||
define-properties: 1.2.1
|
||||
es-abstract: 1.22.3
|
||||
dev: true
|
||||
|
||||
/once@1.4.0:
|
||||
resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
|
||||
dependencies:
|
||||
|
@ -6002,6 +6382,10 @@ packages:
|
|||
engines: {node: '>=8'}
|
||||
dev: true
|
||||
|
||||
/resolve-pkg-maps@1.0.0:
|
||||
resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==}
|
||||
dev: true
|
||||
|
||||
/resolve@1.22.8:
|
||||
resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==}
|
||||
hasBin: true
|
||||
|
@ -6133,6 +6517,7 @@ packages:
|
|||
chokidar: 3.5.3
|
||||
immutable: 4.3.4
|
||||
source-map-js: 1.0.2
|
||||
dev: false
|
||||
|
||||
/sax@1.3.0:
|
||||
resolution: {integrity: sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==}
|
||||
|
@ -6154,7 +6539,6 @@ packages:
|
|||
/semver@6.3.1:
|
||||
resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
|
||||
hasBin: true
|
||||
dev: false
|
||||
|
||||
/semver@7.5.4:
|
||||
resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==}
|
||||
|
@ -6603,6 +6987,11 @@ packages:
|
|||
tslib: 2.6.2
|
||||
dev: true
|
||||
|
||||
/tapable@2.2.1:
|
||||
resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==}
|
||||
engines: {node: '>=6'}
|
||||
dev: true
|
||||
|
||||
/tar-fs@2.1.1:
|
||||
resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==}
|
||||
requiresBuild: true
|
||||
|
@ -6725,7 +7114,15 @@ packages:
|
|||
optional: true
|
||||
dependencies:
|
||||
typescript: 5.3.3
|
||||
dev: false
|
||||
|
||||
/tsconfig-paths@3.15.0:
|
||||
resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==}
|
||||
dependencies:
|
||||
'@types/json5': 0.0.29
|
||||
json5: 1.0.2
|
||||
minimist: 1.2.8
|
||||
strip-bom: 3.0.0
|
||||
dev: true
|
||||
|
||||
/tslib@2.6.2:
|
||||
resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==}
|
||||
|
@ -6989,6 +7386,11 @@ packages:
|
|||
engines: {node: '>= 4.0.0'}
|
||||
dev: true
|
||||
|
||||
/universalify@2.0.1:
|
||||
resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
|
||||
engines: {node: '>= 10.0.0'}
|
||||
dev: false
|
||||
|
||||
/update-browserslist-db@1.0.13(browserslist@4.22.2):
|
||||
resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==}
|
||||
hasBin: true
|
||||
|
@ -7068,6 +7470,27 @@ packages:
|
|||
vfile-message: 4.0.2
|
||||
dev: false
|
||||
|
||||
/vite-node@1.2.1(@types/node@18.19.10):
|
||||
resolution: {integrity: sha512-fNzHmQUSOY+y30naohBvSW7pPn/xn3Ib/uqm+5wAJQJiqQsU0NBR78XdRJb04l4bOFKjpTWld0XAfkKlrDbySg==}
|
||||
engines: {node: ^18.0.0 || >=20.0.0}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
cac: 6.7.14
|
||||
debug: 4.3.4
|
||||
pathe: 1.1.2
|
||||
picocolors: 1.0.0
|
||||
vite: 5.0.12(@types/node@18.19.10)
|
||||
transitivePeerDependencies:
|
||||
- '@types/node'
|
||||
- less
|
||||
- lightningcss
|
||||
- sass
|
||||
- stylus
|
||||
- sugarss
|
||||
- supports-color
|
||||
- terser
|
||||
dev: true
|
||||
|
||||
/vite-node@1.2.1(@types/node@20.11.6):
|
||||
resolution: {integrity: sha512-fNzHmQUSOY+y30naohBvSW7pPn/xn3Ib/uqm+5wAJQJiqQsU0NBR78XdRJb04l4bOFKjpTWld0XAfkKlrDbySg==}
|
||||
engines: {node: ^18.0.0 || >=20.0.0}
|
||||
|
@ -7104,7 +7527,41 @@ packages:
|
|||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
- typescript
|
||||
dev: false
|
||||
|
||||
/vite@5.0.12(@types/node@18.19.10):
|
||||
resolution: {integrity: sha512-4hsnEkG3q0N4Tzf1+t6NdN9dg/L3BM+q8SWgbSPnJvrgH2kgdyzfVJwbR1ic69/4uMJJ/3dqDZZE5/WwqW8U1w==}
|
||||
engines: {node: ^18.0.0 || >=20.0.0}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
'@types/node': ^18.0.0 || >=20.0.0
|
||||
less: '*'
|
||||
lightningcss: ^1.21.0
|
||||
sass: '*'
|
||||
stylus: '*'
|
||||
sugarss: '*'
|
||||
terser: ^5.4.0
|
||||
peerDependenciesMeta:
|
||||
'@types/node':
|
||||
optional: true
|
||||
less:
|
||||
optional: true
|
||||
lightningcss:
|
||||
optional: true
|
||||
sass:
|
||||
optional: true
|
||||
stylus:
|
||||
optional: true
|
||||
sugarss:
|
||||
optional: true
|
||||
terser:
|
||||
optional: true
|
||||
dependencies:
|
||||
'@types/node': 18.19.10
|
||||
esbuild: 0.19.12
|
||||
postcss: 8.4.33
|
||||
rollup: 4.9.6
|
||||
optionalDependencies:
|
||||
fsevents: 2.3.3
|
||||
|
||||
/vite@5.0.12(@types/node@20.11.6):
|
||||
resolution: {integrity: sha512-4hsnEkG3q0N4Tzf1+t6NdN9dg/L3BM+q8SWgbSPnJvrgH2kgdyzfVJwbR1ic69/4uMJJ/3dqDZZE5/WwqW8U1w==}
|
||||
|
@ -7185,7 +7642,7 @@ packages:
|
|||
vite:
|
||||
optional: true
|
||||
dependencies:
|
||||
vite: 5.0.12(sass@1.70.0)
|
||||
vite: 5.0.12(@types/node@18.19.10)
|
||||
dev: false
|
||||
|
||||
/vitest-fetch-mock@0.2.2(vitest@1.2.1):
|
||||
|
@ -7195,11 +7652,68 @@ packages:
|
|||
vitest: '>=0.16.0'
|
||||
dependencies:
|
||||
cross-fetch: 3.1.8
|
||||
vitest: 1.2.1(@types/node@20.11.6)
|
||||
vitest: 1.2.1(@types/node@18.19.10)
|
||||
transitivePeerDependencies:
|
||||
- encoding
|
||||
dev: true
|
||||
|
||||
/vitest@1.2.1(@types/node@18.19.10):
|
||||
resolution: {integrity: sha512-TRph8N8rnSDa5M2wKWJCMnztCZS9cDcgVTQ6tsTFTG/odHJ4l5yNVqvbeDJYJRZ6is3uxaEpFs8LL6QM+YFSdA==}
|
||||
engines: {node: ^18.0.0 || >=20.0.0}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
'@edge-runtime/vm': '*'
|
||||
'@types/node': ^18.0.0 || >=20.0.0
|
||||
'@vitest/browser': ^1.0.0
|
||||
'@vitest/ui': ^1.0.0
|
||||
happy-dom: '*'
|
||||
jsdom: '*'
|
||||
peerDependenciesMeta:
|
||||
'@edge-runtime/vm':
|
||||
optional: true
|
||||
'@types/node':
|
||||
optional: true
|
||||
'@vitest/browser':
|
||||
optional: true
|
||||
'@vitest/ui':
|
||||
optional: true
|
||||
happy-dom:
|
||||
optional: true
|
||||
jsdom:
|
||||
optional: true
|
||||
dependencies:
|
||||
'@types/node': 18.19.10
|
||||
'@vitest/expect': 1.2.1
|
||||
'@vitest/runner': 1.2.1
|
||||
'@vitest/snapshot': 1.2.1
|
||||
'@vitest/spy': 1.2.1
|
||||
'@vitest/utils': 1.2.1
|
||||
acorn-walk: 8.3.2
|
||||
cac: 6.7.14
|
||||
chai: 4.4.1
|
||||
debug: 4.3.4
|
||||
execa: 8.0.1
|
||||
local-pkg: 0.5.0
|
||||
magic-string: 0.30.5
|
||||
pathe: 1.1.2
|
||||
picocolors: 1.0.0
|
||||
std-env: 3.7.0
|
||||
strip-literal: 1.3.0
|
||||
tinybench: 2.6.0
|
||||
tinypool: 0.8.2
|
||||
vite: 5.0.12(@types/node@18.19.10)
|
||||
vite-node: 1.2.1(@types/node@18.19.10)
|
||||
why-is-node-running: 2.2.2
|
||||
transitivePeerDependencies:
|
||||
- less
|
||||
- lightningcss
|
||||
- sass
|
||||
- stylus
|
||||
- sugarss
|
||||
- supports-color
|
||||
- terser
|
||||
dev: true
|
||||
|
||||
/vitest@1.2.1(@types/node@20.11.6):
|
||||
resolution: {integrity: sha512-TRph8N8rnSDa5M2wKWJCMnztCZS9cDcgVTQ6tsTFTG/odHJ4l5yNVqvbeDJYJRZ6is3uxaEpFs8LL6QM+YFSdA==}
|
||||
engines: {node: ^18.0.0 || >=20.0.0}
|
||||
|
|
Loading…
Reference in New Issue