diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 000000000..cb168d89c --- /dev/null +++ b/.editorconfig @@ -0,0 +1,4 @@ +# Unix-style newlines with a newline ending every file +[*] +end_of_line = lf +insert_final_newline = true \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 89fa90e86..18ea7315e 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -1,7 +1,7 @@ --- name: Bug report about: Create a report to help us improve -title: 'Bug:' +title: 'Bug: [NAME]' labels: bug assignees: '' --- diff --git a/.github/renovate.json b/.github/renovate.json index c7c89fe88..1a0e6a54f 100644 --- a/.github/renovate.json +++ b/.github/renovate.json @@ -10,11 +10,8 @@ "lockFileMaintenance": { "enabled": true }, - "ignorePaths": [ - "**/node_modules/**", - "**/bower_components/**", - "packages/ghost-to-studio/package.json" - ], + "postUpdateOptions": ["pnpmDedupe"], + "ignorePaths": ["**/node_modules/**", "**/bower_components/**"], "labels": ["dependencies"], "additionalBranchPrefix": "{{parentDir}}-", "gitIgnoredAuthors": ["github+renovate@astro-studiocms.xyz"], diff --git a/.github/workflows/changeset-release.yml b/.github/workflows/changeset-release.yml new file mode 100644 index 000000000..e2135515f --- /dev/null +++ b/.github/workflows/changeset-release.yml @@ -0,0 +1,62 @@ +name: Changeset Release + +on: + push: + branches: + - main + +concurrency: ${{ github.workflow }}-${{ github.ref }} + +permissions: + contents: write + pull-requests: write + issues: write + id-token: write + actions: read + checks: read + deployments: read + discussions: read + packages: read + pages: read + repository-projects: read + security-events: read + statuses: read + +jobs: + release: + name: Release + runs-on: ubuntu-latest + steps: + - name: Checkout Repo + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4 + + - name: Setup pnpm (corepack enabled) + uses: pnpm/action-setup@v2 + + - name: Setup Node.js 20.x + uses: actions/setup-node@1e60f620b9541d16bece96c5465dc8ee9832be0b # v4 + with: + node-version-file: '.node-version' + cache: 'pnpm' + + - name: Install Dependencies + run: pnpm ci:install + + - name: Create Release Pull Request or Publish to npm + id: changesets + uses: matthiesenxyz/changeset@v1 + with: + commit: "👷 [ci]: Version Packages" + title: "👷 [ci]: Ready for Release" + version: pnpm ci:version + publish: pnpm ci:publish + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + + - name: Add Label to CI PR + if: ${{ steps.changesets.outputs.hasChangesets == 'true' }} + run: gh pr edit "$PR_URL" --add-label "ci" + env: + PR_URL: ${{ steps.changesets.outputs.pull_request_url }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file diff --git a/.github/workflows/changeset.yml b/.github/workflows/changeset-snapshot.yml similarity index 78% rename from .github/workflows/changeset.yml rename to .github/workflows/changeset-snapshot.yml index 5c2e0ccd2..f6a754ad5 100644 --- a/.github/workflows/changeset.yml +++ b/.github/workflows/changeset-snapshot.yml @@ -2,15 +2,6 @@ name: Changeset Release and Snapshot on: workflow_dispatch: - inputs: - runRelease: - default: 'false' - required: false - type: boolean - description: Enable, if you want to run the release workflow - push: - branches: - - main issue_comment: types: [created] @@ -39,45 +30,6 @@ permissions: statuses: read jobs: - release: - name: Release - if: ${{ github.event.inputs.runRelease == 'true' || github.event_name == 'push' && github.ref == 'refs/heads/main' }} - runs-on: ubuntu-latest - steps: - - name: Checkout Repo - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4 - - - name: Setup pnpm (corepack enabled) - uses: pnpm/action-setup@v2 - - - name: Setup Node.js 20.x - uses: actions/setup-node@1e60f620b9541d16bece96c5465dc8ee9832be0b # v4 - with: - node-version-file: '.node-version' - cache: 'pnpm' - - - name: Install Dependencies - run: pnpm ci:install - - - name: Create Release Pull Request or Publish to npm - id: changesets - uses: matthiesenxyz/changeset@v1 - with: - commit: "👷 [ci]: Version Packages" - title: "👷 [ci]: Ready for Release" - version: pnpm ci:version - publish: pnpm ci:publish - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - NPM_TOKEN: ${{ secrets.NPM_TOKEN }} - - - name: Add Label to CI PR - if: ${{ steps.changesets.outputs.hasChangesets == 'true' }} - run: gh pr edit "$PR_URL" --add-label "ci" - env: - PR_URL: ${{ steps.changesets.outputs.pull_request_url }} - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - snapshot-release: name: Create a snapshot release of a pull request if: ${{ github.repository_owner == 'astrolicious' && github.event.issue.pull_request && (contains(github.event.comment.body, '!preview') || contains(github.event.comment.body, '/preview') || contains(github.event.comment.body, '!snapshot') || contains(github.event.comment.body, '/snapshot')) }} diff --git a/.github/workflows/deployments.yml b/.github/workflows/deployments.yml index dd45b0e38..8dc8625c8 100644 --- a/.github/workflows/deployments.yml +++ b/.github/workflows/deployments.yml @@ -50,7 +50,7 @@ jobs: issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, - body: `New deployment for the Docs has been queued and should be available shortly. To view the deployment once it is ready, click [here](https://pr${context.payload.pull_request.number}-docs.astro-studiocms.xyz/)` + body: `New deployment for the Docs has been queued and should be available shortly. To view the deployment once it is ready, click [here](https://pr${context.payload.pull_request.number}-docs.studiocms.xyz/)` }) - name: Landing Page Deployment (PR Demo) @@ -70,7 +70,7 @@ jobs: issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, - body: `New deployment for the Landing Page has been queued and should be available shortly. To view the deployment once it is ready, click [here](https://pr${context.payload.pull_request.number}-www.astro-studiocms.xyz/)` + body: `New deployment for the Landing Page has been queued and should be available shortly. To view the deployment once it is ready, click [here](https://pr${context.payload.pull_request.number}-www.studiocms.xyz/)` }) @@ -91,7 +91,7 @@ jobs: issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, - body: `New deployment for the Packages/Playground DEMO has been queued and should be available shortly. To view the deployment once it is ready, click [here](https://pr${context.payload.pull_request.number}-demo.astro-studiocms.xyz/)` + body: `New deployment for the Packages/Playground DEMO has been queued and should be available shortly. To view the deployment once it is ready, click [here](https://pr${context.payload.pull_request.number}-demo.studiocms.xyz/)` }) redeploy: @@ -101,8 +101,6 @@ jobs: steps: - name: Checkout Repo uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4 - with: - fetch-depth: 2 - name: Get changed files id: changed-files-push diff --git a/.moon/workspace.yml b/.moon/workspace.yml index b7f68d056..d8ed91f9f 100644 --- a/.moon/workspace.yml +++ b/.moon/workspace.yml @@ -3,11 +3,24 @@ $schema: 'https://moonrepo.dev/schemas/workspace.json' projects: root: '.' - studioCMS: 'packages/studioCMS' - studioCMSBlog: 'packages/studioCMSBlog' - ghost-to-studio: 'packages/ghost-to-studio' + # Packages + studiocms: 'packages/studioCMS' + studiocms_assets: 'packages/studiocms_assets' + studiocms_auth: 'packages/studiocms_auth' + studiocms_betaresources: 'packages/studiocms_betaresources' + studiocms_blog: 'packages/studiocms_blog' + studiocms_core: 'packages/studiocms_core' + studiocms_dashboard: 'packages/studiocms_dashboard' + studiocms_frontend: 'packages/studiocms_frontend' + studiocms_imagehandler: 'packages/studiocms_imagehandler' + studiocms_renderers: 'packages/studiocms_renderers' + studiocms_robotstxt: 'packages/studiocms_robotstxt' + + # Playgrounds playground: 'playgrounds/node' cloudflare-playground: 'playgrounds/cloudflare' + + # Web Sites & Docs web: 'www/web' docs: 'www/docs' diff --git a/biome.json b/biome.json index fdb4a662a..9d8f1c352 100644 --- a/biome.json +++ b/biome.json @@ -8,10 +8,11 @@ }, "files": { "ignoreUnknown": true, - "ignore": ["**/.astro/**", "**/package.json"] + "ignore": ["**/.astro/**", "**/package.json", "**/dist/**"] }, "formatter": { - "lineWidth": 100 + "lineWidth": 100, + "lineEnding": "lf" }, "javascript": { "formatter": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 862ef23ef..55c05d79f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -92,9 +92,6 @@ catalogs: astro-icon: specifier: ^1.1.1 version: 1.1.1 - astro-seo: - specifier: ^0.8.4 - version: 0.8.4 motion: specifier: ^10.18.0 version: 10.18.0 @@ -877,18 +874,21 @@ importers: astro-icon: specifier: catalog:landing version: 1.1.1 - astro-seo: - specifier: catalog:landing - version: 0.8.4(typescript@5.5.4) motion: specifier: catalog:landing version: 10.18.0 powerglitch: specifier: catalog:landing version: 2.3.3 + sharp: + specifier: ^0.33.4 + version: 0.33.4 tailwind-merge: specifier: catalog:landing version: 2.5.2 + tailwind-scrollbar: + specifier: catalog:landing + version: 3.1.0(tailwindcss@3.4.7) tailwindcss: specifier: catalog:landing version: 3.4.7 @@ -896,9 +896,9 @@ importers: specifier: 'catalog:' version: 5.5.4 devDependencies: - tailwind-scrollbar: - specifier: catalog:landing - version: 3.1.0(tailwindcss@3.4.7) + '@tailwindcss/typography': + specifier: ^0.5.15 + version: 0.5.15(tailwindcss@3.4.7) packages: @@ -942,12 +942,6 @@ packages: peerDependencies: astro: ^2.0.0 || ^3.0.0-beta || ^4.0.0-beta - '@astrojs/check@0.5.10': - resolution: {integrity: sha512-vliHXM9cu/viGeKiksUM4mXfO816ohWtawTl2ADPgTsd4nUMjFiyAl7xFZhF34yy4hq4qf7jvK1F2PlR3b5I5w==} - hasBin: true - peerDependencies: - typescript: ^5.0.0 - '@astrojs/check@0.9.3': resolution: {integrity: sha512-I6Dz45bMI5YRbp4yK2LKWsHH3/kkHRGdPGruGkLap6pqxhdcNh7oCgN04Ac+haDfc9ow5BYPGPmEhkwef15GQQ==} hasBin: true @@ -959,9 +953,6 @@ packages: peerDependencies: astro: ^4.10.3 - '@astrojs/compiler@2.10.0': - resolution: {integrity: sha512-V8ym+4kYCKmMeSdfDvm/SrlmUlKLkKzfWV3cKyiStEKW/D+YsXaQiBZcSCtuKXq8aQhsDw9HtCTZilhEMBX+BA==} - '@astrojs/compiler@2.10.3': resolution: {integrity: sha512-bL/O7YBxsFt55YHU021oL+xz+B/9HvGNId3F9xURN16aeqDK9juHGktdkCSXz+U4nqFACq6ZFvWomOzhV+zfPw==} @@ -974,18 +965,6 @@ packages: '@astrojs/internal-helpers@0.4.1': resolution: {integrity: sha512-bMf9jFihO8YP940uD70SI/RDzIhUHJAolWVcO1v5PUivxGKvfLZTLTVVxEYzGYyPsA3ivdLNqMnL5VgmQySa+g==} - '@astrojs/language-server@2.12.8': - resolution: {integrity: sha512-aUppjqbCdFkd2Cdr8tDtd9id7lAZAmpwpYTQrOm69z8P4NaGUE/ksMIhd0Q99zXfSBjDVC7HlxSjPg8Y7xakfg==} - hasBin: true - peerDependencies: - prettier: ^3.0.0 - prettier-plugin-astro: '>=0.11.0' - peerDependenciesMeta: - prettier: - optional: true - prettier-plugin-astro: - optional: true - '@astrojs/language-server@2.14.1': resolution: {integrity: sha512-mkKtCTPRD4dyKdAqIP0zmmPyO/ZABOqFESnaVca47Dg/sAagJnDSEsDUDzNbHFh1+9Dj1o5y4iwNsxJboGdaNg==} hasBin: true @@ -1211,10 +1190,6 @@ packages: resolution: {integrity: sha512-VJ4XsrD+nOvlXyLzmLzUs/0qjFS4sK30te5yEFlvbbUNEgKaVb2BHZUpAL+ttLPQAHNrsI3zZisbfha5Cvr8vg==} engines: {node: '>=6.9.0'} - '@babel/types@7.25.4': - resolution: {integrity: sha512-zQ1ijeeCXVEh+aNL0RlmkPkG8HUiDcU2pzQQFjtbntgAczRASFzj4H+6+bV+dy1ntKR14I/DypeuRG1uma98iQ==} - engines: {node: '>=6.9.0'} - '@babel/types@7.25.6': resolution: {integrity: sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==} engines: {node: '>=6.9.0'} @@ -2016,113 +1991,218 @@ packages: cpu: [arm64] os: [darwin] + '@img/sharp-darwin-arm64@0.33.5': + resolution: {integrity: sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [darwin] + '@img/sharp-darwin-x64@0.33.4': resolution: {integrity: sha512-0l7yRObwtTi82Z6ebVI2PnHT8EB2NxBgpK2MiKJZJ7cz32R4lxd001ecMhzzsZig3Yv9oclvqqdV93jo9hy+Dw==} engines: {glibc: '>=2.26', node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'} cpu: [x64] os: [darwin] + '@img/sharp-darwin-x64@0.33.5': + resolution: {integrity: sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [darwin] + '@img/sharp-libvips-darwin-arm64@1.0.2': resolution: {integrity: sha512-tcK/41Rq8IKlSaKRCCAuuY3lDJjQnYIW1UXU1kxcEKrfL8WR7N6+rzNoOxoQRJWTAECuKwgAHnPvqXGN8XfkHA==} engines: {macos: '>=11', npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'} cpu: [arm64] os: [darwin] + '@img/sharp-libvips-darwin-arm64@1.0.4': + resolution: {integrity: sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==} + cpu: [arm64] + os: [darwin] + '@img/sharp-libvips-darwin-x64@1.0.2': resolution: {integrity: sha512-Ofw+7oaWa0HiiMiKWqqaZbaYV3/UGL2wAPeLuJTx+9cXpCRdvQhCLG0IH8YGwM0yGWGLpsF4Su9vM1o6aer+Fw==} engines: {macos: '>=10.13', npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'} cpu: [x64] os: [darwin] + '@img/sharp-libvips-darwin-x64@1.0.4': + resolution: {integrity: sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==} + cpu: [x64] + os: [darwin] + '@img/sharp-libvips-linux-arm64@1.0.2': resolution: {integrity: sha512-x7kCt3N00ofFmmkkdshwj3vGPCnmiDh7Gwnd4nUwZln2YjqPxV1NlTyZOvoDWdKQVDL911487HOueBvrpflagw==} engines: {glibc: '>=2.26', npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'} cpu: [arm64] os: [linux] + '@img/sharp-libvips-linux-arm64@1.0.4': + resolution: {integrity: sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==} + cpu: [arm64] + os: [linux] + '@img/sharp-libvips-linux-arm@1.0.2': resolution: {integrity: sha512-iLWCvrKgeFoglQxdEwzu1eQV04o8YeYGFXtfWU26Zr2wWT3q3MTzC+QTCO3ZQfWd3doKHT4Pm2kRmLbupT+sZw==} engines: {glibc: '>=2.28', npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'} cpu: [arm] os: [linux] + '@img/sharp-libvips-linux-arm@1.0.5': + resolution: {integrity: sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g==} + cpu: [arm] + os: [linux] + '@img/sharp-libvips-linux-s390x@1.0.2': resolution: {integrity: sha512-cmhQ1J4qVhfmS6szYW7RT+gLJq9dH2i4maq+qyXayUSn9/3iY2ZeWpbAgSpSVbV2E1JUL2Gg7pwnYQ1h8rQIog==} engines: {glibc: '>=2.28', npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'} cpu: [s390x] os: [linux] + '@img/sharp-libvips-linux-s390x@1.0.4': + resolution: {integrity: sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA==} + cpu: [s390x] + os: [linux] + '@img/sharp-libvips-linux-x64@1.0.2': resolution: {integrity: sha512-E441q4Qdb+7yuyiADVi5J+44x8ctlrqn8XgkDTwr4qPJzWkaHwD489iZ4nGDgcuya4iMN3ULV6NwbhRZJ9Z7SQ==} engines: {glibc: '>=2.26', npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'} cpu: [x64] os: [linux] + '@img/sharp-libvips-linux-x64@1.0.4': + resolution: {integrity: sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw==} + cpu: [x64] + os: [linux] + '@img/sharp-libvips-linuxmusl-arm64@1.0.2': resolution: {integrity: sha512-3CAkndNpYUrlDqkCM5qhksfE+qSIREVpyoeHIU6jd48SJZViAmznoQQLAv4hVXF7xyUB9zf+G++e2v1ABjCbEQ==} engines: {musl: '>=1.2.2', npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'} cpu: [arm64] os: [linux] + '@img/sharp-libvips-linuxmusl-arm64@1.0.4': + resolution: {integrity: sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==} + cpu: [arm64] + os: [linux] + '@img/sharp-libvips-linuxmusl-x64@1.0.2': resolution: {integrity: sha512-VI94Q6khIHqHWNOh6LLdm9s2Ry4zdjWJwH56WoiJU7NTeDwyApdZZ8c+SADC8OH98KWNQXnE01UdJ9CSfZvwZw==} engines: {musl: '>=1.2.2', npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'} cpu: [x64] os: [linux] + '@img/sharp-libvips-linuxmusl-x64@1.0.4': + resolution: {integrity: sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw==} + cpu: [x64] + os: [linux] + '@img/sharp-linux-arm64@0.33.4': resolution: {integrity: sha512-2800clwVg1ZQtxwSoTlHvtm9ObgAax7V6MTAB/hDT945Tfyy3hVkmiHpeLPCKYqYR1Gcmv1uDZ3a4OFwkdBL7Q==} engines: {glibc: '>=2.26', node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'} cpu: [arm64] os: [linux] + '@img/sharp-linux-arm64@0.33.5': + resolution: {integrity: sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [linux] + '@img/sharp-linux-arm@0.33.4': resolution: {integrity: sha512-RUgBD1c0+gCYZGCCe6mMdTiOFS0Zc/XrN0fYd6hISIKcDUbAW5NtSQW9g/powkrXYm6Vzwd6y+fqmExDuCdHNQ==} engines: {glibc: '>=2.28', node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'} cpu: [arm] os: [linux] + '@img/sharp-linux-arm@0.33.5': + resolution: {integrity: sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm] + os: [linux] + '@img/sharp-linux-s390x@0.33.4': resolution: {integrity: sha512-h3RAL3siQoyzSoH36tUeS0PDmb5wINKGYzcLB5C6DIiAn2F3udeFAum+gj8IbA/82+8RGCTn7XW8WTFnqag4tQ==} engines: {glibc: '>=2.31', node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'} cpu: [s390x] os: [linux] + '@img/sharp-linux-s390x@0.33.5': + resolution: {integrity: sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [s390x] + os: [linux] + '@img/sharp-linux-x64@0.33.4': resolution: {integrity: sha512-GoR++s0XW9DGVi8SUGQ/U4AeIzLdNjHka6jidVwapQ/JebGVQIpi52OdyxCNVRE++n1FCLzjDovJNozif7w/Aw==} engines: {glibc: '>=2.26', node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'} cpu: [x64] os: [linux] + '@img/sharp-linux-x64@0.33.5': + resolution: {integrity: sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [linux] + '@img/sharp-linuxmusl-arm64@0.33.4': resolution: {integrity: sha512-nhr1yC3BlVrKDTl6cO12gTpXMl4ITBUZieehFvMntlCXFzH2bvKG76tBL2Y/OqhupZt81pR7R+Q5YhJxW0rGgQ==} engines: {musl: '>=1.2.2', node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'} cpu: [arm64] os: [linux] + '@img/sharp-linuxmusl-arm64@0.33.5': + resolution: {integrity: sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [linux] + '@img/sharp-linuxmusl-x64@0.33.4': resolution: {integrity: sha512-uCPTku0zwqDmZEOi4ILyGdmW76tH7dm8kKlOIV1XC5cLyJ71ENAAqarOHQh0RLfpIpbV5KOpXzdU6XkJtS0daw==} engines: {musl: '>=1.2.2', node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'} cpu: [x64] os: [linux] + '@img/sharp-linuxmusl-x64@0.33.5': + resolution: {integrity: sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [linux] + '@img/sharp-wasm32@0.33.4': resolution: {integrity: sha512-Bmmauh4sXUsUqkleQahpdNXKvo+wa1V9KhT2pDA4VJGKwnKMJXiSTGphn0gnJrlooda0QxCtXc6RX1XAU6hMnQ==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'} cpu: [wasm32] + '@img/sharp-wasm32@0.33.5': + resolution: {integrity: sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [wasm32] + '@img/sharp-win32-ia32@0.33.4': resolution: {integrity: sha512-99SJ91XzUhYHbx7uhK3+9Lf7+LjwMGQZMDlO/E/YVJ7Nc3lyDFZPGhjwiYdctoH2BOzW9+TnfqcaMKt0jHLdqw==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'} cpu: [ia32] os: [win32] + '@img/sharp-win32-ia32@0.33.5': + resolution: {integrity: sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [ia32] + os: [win32] + '@img/sharp-win32-x64@0.33.4': resolution: {integrity: sha512-3QLocdTRVIrFNye5YocZl+KKpYKP+fksi1QhmOArgx7GyhIbQp/WrJRu176jm8IxromS7RIkzMiMINVdBtC8Aw==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'} cpu: [x64] os: [win32] + '@img/sharp-win32-x64@0.33.5': + resolution: {integrity: sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [win32] + '@inox-tools/astro-when@0.2.2': resolution: {integrity: sha512-ZQ+j5Al+iPUVLEGOCW2H7QYAX22a8PBCrF3h3q8d46MUnsb02GX01zQT206FBu9pqPInD6fv5Prz+yGkk180zw==} peerDependencies: @@ -2710,6 +2790,11 @@ packages: resolution: {integrity: sha512-OV4XYAAZv0OfOR4RlpxCYOn7pH8ETIL8Pkh5hFvIrL+BN4/vlBLoeESYDU2tB/f9iichu4cfwdPquJITmKdY1w==} engines: {node: '>=14.17.0'} + '@tailwindcss/typography@0.5.15': + resolution: {integrity: sha512-AqhlCXl+8grUz8uqExv5OTtgpjuVIwFTSXTrh8y9/pw6q2ek7fJ+Y8ZEVw7EB2DCcuCOtEjf9w3+J3rzts01uA==} + peerDependencies: + tailwindcss: '>=3.0.0 || insiders || >=4.0.0-alpha.20' + '@trysound/sax@0.2.0': resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==} engines: {node: '>=10.13.0'} @@ -2939,44 +3024,21 @@ packages: peerDependencies: typescript: '*' - '@volar/kit@2.4.0-alpha.18': - resolution: {integrity: sha512-dZMSNhesh23lhd61ax2l04IgIcYofAjm8M+5BKAmX47ROweyc8RrrslszCFUJynlmXx6JS1PoHqvo8+E0aAYQQ==} - peerDependencies: - typescript: '*' - '@volar/language-core@2.4.0': resolution: {integrity: sha512-FTla+khE+sYK0qJP+6hwPAAUwiNHVMph4RUXpxf/FIPKUP61NFrVZorml4mjFShnueR2y9/j8/vnh09YwVdH7A==} - '@volar/language-core@2.4.0-alpha.18': - resolution: {integrity: sha512-JAYeJvYQQROmVRtSBIczaPjP3DX4QW1fOqW1Ebs0d3Y3EwSNRglz03dSv0Dm61dzd0Yx3WgTW3hndDnTQqgmyg==} - '@volar/language-server@2.4.0': resolution: {integrity: sha512-rmGIjAxWekWQiGH97Mosb4juiD/hfFYNQKV5Py9r7vDOLSkbIwRhITbwHm88NJKs8P6TNc6w/PfBXN6yjKadJg==} - '@volar/language-server@2.4.0-alpha.18': - resolution: {integrity: sha512-dciHEE/R5kzI0bY71QfkoCVQ3cQI6g9MHfA4oIP6UhnJy0CdleUalWSygOXoD3Nq7Yk6wn2BRrb1PP5MsadY/Q==} - '@volar/language-service@2.4.0': resolution: {integrity: sha512-4P3yeQXIL68mLfS3n6P3m02IRg3GnLHUU9k/1PCHEfm5FG9bySkDOc72dbBn2vAa2BxOqm18bmmZXrsWuQ5AOw==} - '@volar/language-service@2.4.0-alpha.18': - resolution: {integrity: sha512-EuetrtbEtudi9buinWAG5U3Jam5dY27zXd/7GYnx542kBwanWOBM8i4DAQd0z7M11fOxXgybxPA933uaSyaOog==} - - '@volar/snapshot-document@2.4.0-alpha.18': - resolution: {integrity: sha512-JAeclEly/wnILhR4Pu9MpgBLInZJH49O1zoy8fU+pk5I+zpv7JIEby5z2UFAS60+sIDnxBdAGd7rZ5VibE70vg==} - '@volar/source-map@2.4.0': resolution: {integrity: sha512-2ceY8/NEZvN6F44TXw2qRP6AQsvCYhV2bxaBPWxV9HqIfkbRydSksTFObCF1DBDNBfKiZTS8G/4vqV6cvjdOIQ==} - '@volar/source-map@2.4.0-alpha.18': - resolution: {integrity: sha512-MTeCV9MUwwsH0sNFiZwKtFrrVZUK6p8ioZs3xFzHc2cvDXHWlYN3bChdQtwKX+FY2HG6H3CfAu1pKijolzIQ8g==} - '@volar/typescript@2.4.0': resolution: {integrity: sha512-9zx3lQWgHmVd+JRRAHUSRiEhe4TlzL7U7e6ulWXOxHH/WNYxzKwCvZD7WYWEZFdw4dHfTD9vUR0yPQO6GilCaQ==} - '@volar/typescript@2.4.0-alpha.18': - resolution: {integrity: sha512-sXh5Y8sqGUkgxpMWUGvRXggxYHAVxg0Pa1C42lQZuPDrW6vHJPR0VCK8Sr7WJsAW530HuNQT/ZIskmXtxjybMQ==} - '@vscode/emmet-helper@2.9.3': resolution: {integrity: sha512-rB39LHWWPQYYlYfpv9qCoZOVioPCftKXXqrsyqN1mTWZM6dTnONT63Db+03vgrBbHzJN45IrgS/AGxw9iiqfEw==} @@ -3113,9 +3175,6 @@ packages: peerDependencies: astro: ^4.4.0 - astro-seo@0.8.4: - resolution: {integrity: sha512-Ou1vzQSXAxa0K8rtNtXNvSpYqOGEgMhh0immMxJeXmbVZac3UKCNWAoXWyOQDFYsZvBugCRSg0N1phBqPMVgCw==} - astro-theme-provider@0.6.1: resolution: {integrity: sha512-6cFbq7G5OlhVQqCdhLO7PVp17SMbparSqvr9JJ+HvfTacfTJ+wEIBMujE0/0PGzDkvSw0vi2ETHERQQpH3yk9g==} peerDependencies: @@ -3296,10 +3355,6 @@ packages: resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==} engines: {node: '>=10'} - cli-cursor@4.0.0: - resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - cli-cursor@5.0.0: resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==} engines: {node: '>=18'} @@ -4329,6 +4384,15 @@ packages: resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} engines: {node: '>=10'} + lodash.castarray@4.4.0: + resolution: {integrity: sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q==} + + lodash.isplainobject@4.0.6: + resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==} + + lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + lodash.startcase@4.4.0: resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==} @@ -4629,10 +4693,6 @@ packages: engines: {node: '>=10.0.0'} hasBin: true - mimic-fn@2.1.0: - resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} - engines: {node: '>=6'} - mimic-function@5.0.1: resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==} engines: {node: '>=18'} @@ -4777,10 +4837,6 @@ packages: once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} - onetime@5.1.2: - resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} - engines: {node: '>=6'} - onetime@7.0.0: resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==} engines: {node: '>=18'} @@ -4789,10 +4845,6 @@ packages: resolution: {integrity: sha512-mnkeQ1qP5Ue2wd+aivTD3NHd/lZ96Lu0jgf0pwktLPtx6cTZiH7tyeGRRHs0zX0rbrahXPnXlUnbeXyaBBuIaw==} engines: {node: '>=18'} - ora@8.0.1: - resolution: {integrity: sha512-ANIvzobt1rls2BDny5fWZ3ZVKyD6nscLvfFRpQgfWsythlcsVUC9kL0zq6j2Z5z9wwp1kd7wpsD/T9qNPVLCaQ==} - engines: {node: '>=18'} - ora@8.1.0: resolution: {integrity: sha512-GQEkNkH/GHOhPFXcqZs3IDahXEQcQxsSjEkK4KvEEST4t7eNzoMjxTzef+EZ+JluDEV+Raoi3WQ2CflnRdSVnQ==} engines: {node: '>=18'} @@ -4980,6 +5032,10 @@ packages: peerDependencies: postcss: ^8.2.14 + postcss-selector-parser@6.0.10: + resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==} + engines: {node: '>=4'} + postcss-selector-parser@6.1.1: resolution: {integrity: sha512-b4dlw/9V8A71rLIDsSwVmak9z2DuBUB7CA1/wSdelNEzqsjoSPeADTWNO09lpH49Diy3/JIZ2bSPB1dI3LJCHg==} engines: {node: '>=4'} @@ -5183,10 +5239,6 @@ packages: resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} hasBin: true - restore-cursor@4.0.0: - resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - restore-cursor@5.1.0: resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==} engines: {node: '>=18'} @@ -5269,6 +5321,10 @@ packages: resolution: {integrity: sha512-7i/dt5kGl7qR4gwPRD2biwD2/SvBn3O04J77XKFgL2OnZtQw+AG9wnuS/csmu80nPRHLYE9E41fyEiG8nhH6/Q==} engines: {libvips: '>=8.15.2', node: ^18.17.0 || ^20.3.0 || >=21.0.0} + sharp@0.33.5: + resolution: {integrity: sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + shebang-command@1.2.0: resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} engines: {node: '>=0.10.0'} @@ -5522,16 +5578,6 @@ packages: ts-interface-checker@0.1.13: resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} - tsconfck@3.1.1: - resolution: {integrity: sha512-00eoI6WY57SvZEVjm13stEVE90VkEdJAFGgpFLTsZbJyW/LwFQ7uQxJHWpZ2hzSWgCPKc9AnBnNP+0X7o3hAmQ==} - engines: {node: ^18 || >=20} - hasBin: true - peerDependencies: - typescript: ^5.0.0 - peerDependenciesMeta: - typescript: - optional: true - tsconfck@3.1.3: resolution: {integrity: sha512-ulNZP1SVpRDesxeMLON/LtWM8HIgAJEIVpVVhBM6gsmvQ8+Rh+ZG7FWGvHh7Ah3pRABwVJWklWCr/BTZSv0xnQ==} engines: {node: ^18 || >=20} @@ -5733,14 +5779,6 @@ packages: vite: optional: true - volar-service-css@0.0.59: - resolution: {integrity: sha512-gLNjJnECbalPvQB7qeJjhkDN8sR5M3ItbVYjnyio61aHaWptIiXm/HfDahcQ2ApwmvWidkMWWegjGq5L0BENDA==} - peerDependencies: - '@volar/language-service': ~2.4.0-alpha.12 - peerDependenciesMeta: - '@volar/language-service': - optional: true - volar-service-css@0.0.61: resolution: {integrity: sha512-Ct9L/w+IB1JU8F4jofcNCGoHy6TF83aiapfZq9A0qYYpq+Kk5dH+ONS+rVZSsuhsunq8UvAuF8Gk6B8IFLfniw==} peerDependencies: @@ -5749,14 +5787,6 @@ packages: '@volar/language-service': optional: true - volar-service-emmet@0.0.59: - resolution: {integrity: sha512-6EynHcuMwMBETpK29TbZvIMmvzdVG+Tkokk9VWfZeI+SwDptk2tgdhEqiXXvIkqYNgbuu73Itp66lpH76cAU+Q==} - peerDependencies: - '@volar/language-service': ~2.4.0-alpha.12 - peerDependenciesMeta: - '@volar/language-service': - optional: true - volar-service-emmet@0.0.61: resolution: {integrity: sha512-iiYqBxjjcekqrRruw4COQHZME6EZYWVbkHjHDbULpml3g8HGJHzpAMkj9tXNCPxf36A+f1oUYjsvZt36qPg4cg==} peerDependencies: @@ -5765,14 +5795,6 @@ packages: '@volar/language-service': optional: true - volar-service-html@0.0.59: - resolution: {integrity: sha512-hEXOsYpILDlITZxnqRLV9OepVWD63GZBsyjMxszwdzlxvGZjzbGcBBinJGGJRwFIV8djdJwnt91bkdg1V5tj6Q==} - peerDependencies: - '@volar/language-service': ~2.4.0-alpha.12 - peerDependenciesMeta: - '@volar/language-service': - optional: true - volar-service-html@0.0.61: resolution: {integrity: sha512-yFE+YmmgqIL5HI4ORqP++IYb1QaGcv+xBboI0WkCxJJ/M35HZj7f5rbT3eQ24ECLXFbFCFanckwyWJVz5KmN3Q==} peerDependencies: @@ -5781,17 +5803,6 @@ packages: '@volar/language-service': optional: true - volar-service-prettier@0.0.59: - resolution: {integrity: sha512-FmBR4lsgFRGR3V0LnxZZal0WqdOJjuLL6mQSj4p57M15APtQwuocG/FiF+ONGFnwRXMOIBDBTCARdth+TKgL3A==} - peerDependencies: - '@volar/language-service': ~2.4.0-alpha.12 - prettier: ^2.2 || ^3.0 - peerDependenciesMeta: - '@volar/language-service': - optional: true - prettier: - optional: true - volar-service-prettier@0.0.61: resolution: {integrity: sha512-F612nql5I0IS8HxXemCGvOR2Uxd4XooIwqYVUvk7WSBxP/+xu1jYvE3QJ7EVpl8Ty3S4SxPXYiYTsG3bi+gzIQ==} peerDependencies: @@ -5803,14 +5814,6 @@ packages: prettier: optional: true - volar-service-typescript-twoslash-queries@0.0.59: - resolution: {integrity: sha512-skm8e6yhCIkqLwJB6S9MqT5lO9LNFuMD3dYxKpmOZs1CKbXmCZZTmLfEaD5VkJae1xdleEDZFFTHl2O5HLjOGQ==} - peerDependencies: - '@volar/language-service': ~2.4.0-alpha.12 - peerDependenciesMeta: - '@volar/language-service': - optional: true - volar-service-typescript-twoslash-queries@0.0.61: resolution: {integrity: sha512-99FICGrEF0r1E2tV+SvprHPw9Knyg7BdW2fUch0tf59kG+KG+Tj4tL6tUg+cy8f23O/VXlmsWFMIE+bx1dXPnQ==} peerDependencies: @@ -5819,14 +5822,6 @@ packages: '@volar/language-service': optional: true - volar-service-typescript@0.0.59: - resolution: {integrity: sha512-VCOpfiu+lUo5lapWLB5L5vmQGtwzmNWn5MueV915eku7blpphmE+Z7hCNcL1NApn7AetXWhiblv8ZhmUx/dGIA==} - peerDependencies: - '@volar/language-service': ~2.4.0-alpha.12 - peerDependenciesMeta: - '@volar/language-service': - optional: true - volar-service-typescript@0.0.61: resolution: {integrity: sha512-4kRHxVbW7wFBHZWRU6yWxTgiKETBDIJNwmJUAWeP0mHaKpnDGj/astdRFKqGFRYVeEYl45lcUPhdJyrzanjsdQ==} peerDependencies: @@ -6092,18 +6087,6 @@ snapshots: astro: 4.15.4(@types/node@22.0.0)(rollup@4.21.0)(typescript@5.5.4) lite-youtube-embed: 0.3.2 - '@astrojs/check@0.5.10(typescript@5.5.4)': - dependencies: - '@astrojs/language-server': 2.12.8(typescript@5.5.4) - chokidar: 3.6.0 - fast-glob: 3.3.2 - kleur: 4.1.5 - typescript: 5.5.4 - yargs: 17.7.2 - transitivePeerDependencies: - - prettier - - prettier-plugin-astro - '@astrojs/check@0.9.3(typescript@5.5.4)': dependencies: '@astrojs/language-server': 2.14.1(typescript@5.5.4) @@ -6134,8 +6117,6 @@ snapshots: - supports-color - utf-8-validate - '@astrojs/compiler@2.10.0': {} - '@astrojs/compiler@2.10.3': {} '@astrojs/db@0.14.0(@cloudflare/workers-types@4.20240725.0)(@types/react@18.3.5)(react@18.3.1)': @@ -6234,28 +6215,6 @@ snapshots: '@astrojs/internal-helpers@0.4.1': {} - '@astrojs/language-server@2.12.8(typescript@5.5.4)': - dependencies: - '@astrojs/compiler': 2.10.0 - '@jridgewell/sourcemap-codec': 1.5.0 - '@volar/kit': 2.4.0-alpha.18(typescript@5.5.4) - '@volar/language-core': 2.4.0-alpha.18 - '@volar/language-server': 2.4.0-alpha.18 - '@volar/language-service': 2.4.0-alpha.18 - '@volar/typescript': 2.4.0-alpha.18 - fast-glob: 3.3.2 - muggle-string: 0.4.1 - volar-service-css: 0.0.59(@volar/language-service@2.4.0-alpha.18) - volar-service-emmet: 0.0.59(@volar/language-service@2.4.0-alpha.18) - volar-service-html: 0.0.59(@volar/language-service@2.4.0-alpha.18) - volar-service-prettier: 0.0.59(@volar/language-service@2.4.0-alpha.18) - volar-service-typescript: 0.0.59(@volar/language-service@2.4.0-alpha.18) - volar-service-typescript-twoslash-queries: 0.0.59(@volar/language-service@2.4.0-alpha.18) - vscode-html-languageservice: 5.3.0 - vscode-uri: 3.0.8 - transitivePeerDependencies: - - typescript - '@astrojs/language-server@2.14.1(typescript@5.5.4)': dependencies: '@astrojs/compiler': 2.10.3 @@ -6294,7 +6253,7 @@ snapshots: remark-parse: 11.0.0 remark-rehype: 11.1.0 remark-smartypants: 3.0.2 - shiki: 1.14.1 + shiki: 1.16.2 unified: 11.0.5 unist-util-remove-position: 5.0.0 unist-util-visit: 5.0.0 @@ -6390,7 +6349,7 @@ snapshots: dependencies: ci-info: 4.0.0 kleur: 4.1.5 - ora: 8.0.1 + ora: 8.1.0 '@astrojs/tailwind@5.1.0(astro@4.15.4(@types/node@22.0.0)(rollup@4.21.0)(typescript@5.5.4))(tailwindcss@3.4.7)': dependencies: @@ -6443,7 +6402,7 @@ snapshots: '@babel/parser': 7.25.4 '@babel/template': 7.25.0 '@babel/traverse': 7.25.4 - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 convert-source-map: 2.0.0 debug: 4.3.6 gensync: 1.0.0-beta.2 @@ -6454,14 +6413,14 @@ snapshots: '@babel/generator@7.25.5': dependencies: - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 jsesc: 2.5.2 '@babel/helper-annotate-as-pure@7.24.7': dependencies: - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 '@babel/helper-compilation-targets@7.25.2': dependencies: @@ -6487,14 +6446,14 @@ snapshots: '@babel/helper-member-expression-to-functions@7.24.8': dependencies: '@babel/traverse': 7.25.4 - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 transitivePeerDependencies: - supports-color '@babel/helper-module-imports@7.24.7': dependencies: '@babel/traverse': 7.25.4 - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 transitivePeerDependencies: - supports-color @@ -6510,7 +6469,7 @@ snapshots: '@babel/helper-optimise-call-expression@7.24.7': dependencies: - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 '@babel/helper-plugin-utils@7.24.8': {} @@ -6526,14 +6485,14 @@ snapshots: '@babel/helper-simple-access@7.24.7': dependencies: '@babel/traverse': 7.25.4 - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 transitivePeerDependencies: - supports-color '@babel/helper-skip-transparent-expression-wrappers@7.24.7': dependencies: '@babel/traverse': 7.25.4 - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 transitivePeerDependencies: - supports-color @@ -6546,7 +6505,7 @@ snapshots: '@babel/helpers@7.25.0': dependencies: '@babel/template': 7.25.0 - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 '@babel/highlight@7.24.7': dependencies: @@ -6557,7 +6516,7 @@ snapshots: '@babel/parser@7.25.4': dependencies: - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 '@babel/plugin-syntax-jsx@7.24.7(@babel/core@7.25.2)': dependencies: @@ -6595,7 +6554,7 @@ snapshots: '@babel/helper-module-imports': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.25.2) - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 transitivePeerDependencies: - supports-color @@ -6629,7 +6588,7 @@ snapshots: dependencies: '@babel/code-frame': 7.24.7 '@babel/parser': 7.25.4 - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 '@babel/traverse@7.25.4': dependencies: @@ -6637,18 +6596,12 @@ snapshots: '@babel/generator': 7.25.5 '@babel/parser': 7.25.4 '@babel/template': 7.25.0 - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 debug: 4.3.6 globals: 11.12.0 transitivePeerDependencies: - supports-color - '@babel/types@7.25.4': - dependencies: - '@babel/helper-string-parser': 7.24.8 - '@babel/helper-validator-identifier': 7.24.7 - to-fast-properties: 2.0.0 - '@babel/types@7.25.6': dependencies: '@babel/helper-string-parser': 7.24.8 @@ -7227,7 +7180,7 @@ snapshots: '@expressive-code/plugin-shiki@0.35.6': dependencies: '@expressive-code/core': 0.35.6 - shiki: 1.14.1 + shiki: 1.16.2 '@expressive-code/plugin-text-markers@0.35.6': dependencies: @@ -7282,76 +7235,151 @@ snapshots: '@img/sharp-libvips-darwin-arm64': 1.0.2 optional: true + '@img/sharp-darwin-arm64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-darwin-arm64': 1.0.4 + optional: true + '@img/sharp-darwin-x64@0.33.4': optionalDependencies: '@img/sharp-libvips-darwin-x64': 1.0.2 optional: true + '@img/sharp-darwin-x64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-darwin-x64': 1.0.4 + optional: true + '@img/sharp-libvips-darwin-arm64@1.0.2': optional: true + '@img/sharp-libvips-darwin-arm64@1.0.4': + optional: true + '@img/sharp-libvips-darwin-x64@1.0.2': optional: true + '@img/sharp-libvips-darwin-x64@1.0.4': + optional: true + '@img/sharp-libvips-linux-arm64@1.0.2': optional: true + '@img/sharp-libvips-linux-arm64@1.0.4': + optional: true + '@img/sharp-libvips-linux-arm@1.0.2': optional: true + '@img/sharp-libvips-linux-arm@1.0.5': + optional: true + '@img/sharp-libvips-linux-s390x@1.0.2': optional: true + '@img/sharp-libvips-linux-s390x@1.0.4': + optional: true + '@img/sharp-libvips-linux-x64@1.0.2': optional: true + '@img/sharp-libvips-linux-x64@1.0.4': + optional: true + '@img/sharp-libvips-linuxmusl-arm64@1.0.2': optional: true + '@img/sharp-libvips-linuxmusl-arm64@1.0.4': + optional: true + '@img/sharp-libvips-linuxmusl-x64@1.0.2': optional: true + '@img/sharp-libvips-linuxmusl-x64@1.0.4': + optional: true + '@img/sharp-linux-arm64@0.33.4': optionalDependencies: '@img/sharp-libvips-linux-arm64': 1.0.2 optional: true + '@img/sharp-linux-arm64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linux-arm64': 1.0.4 + optional: true + '@img/sharp-linux-arm@0.33.4': optionalDependencies: '@img/sharp-libvips-linux-arm': 1.0.2 optional: true + '@img/sharp-linux-arm@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linux-arm': 1.0.5 + optional: true + '@img/sharp-linux-s390x@0.33.4': optionalDependencies: '@img/sharp-libvips-linux-s390x': 1.0.2 optional: true + '@img/sharp-linux-s390x@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linux-s390x': 1.0.4 + optional: true + '@img/sharp-linux-x64@0.33.4': optionalDependencies: '@img/sharp-libvips-linux-x64': 1.0.2 optional: true + '@img/sharp-linux-x64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linux-x64': 1.0.4 + optional: true + '@img/sharp-linuxmusl-arm64@0.33.4': optionalDependencies: '@img/sharp-libvips-linuxmusl-arm64': 1.0.2 optional: true + '@img/sharp-linuxmusl-arm64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linuxmusl-arm64': 1.0.4 + optional: true + '@img/sharp-linuxmusl-x64@0.33.4': optionalDependencies: '@img/sharp-libvips-linuxmusl-x64': 1.0.2 optional: true + '@img/sharp-linuxmusl-x64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linuxmusl-x64': 1.0.4 + optional: true + '@img/sharp-wasm32@0.33.4': dependencies: '@emnapi/runtime': 1.2.0 optional: true + '@img/sharp-wasm32@0.33.5': + dependencies: + '@emnapi/runtime': 1.2.0 + optional: true + '@img/sharp-win32-ia32@0.33.4': optional: true + '@img/sharp-win32-ia32@0.33.5': + optional: true + '@img/sharp-win32-x64@0.33.4': optional: true + '@img/sharp-win32-x64@0.33.5': + optional: true + '@inox-tools/astro-when@0.2.2(astro@4.15.4(@types/node@20.14.13)(rollup@4.21.0)(typescript@5.5.4))': dependencies: astro: 4.15.4(@types/node@20.14.13)(rollup@4.21.0)(typescript@5.5.4) @@ -7906,6 +7934,14 @@ snapshots: transitivePeerDependencies: - '@types/react' + '@tailwindcss/typography@0.5.15(tailwindcss@3.4.7)': + dependencies: + lodash.castarray: 4.4.0 + lodash.isplainobject: 4.0.6 + lodash.merge: 4.6.2 + postcss-selector-parser: 6.0.10 + tailwindcss: 3.4.7 + '@trysound/sax@0.2.0': {} '@tybys/wasm-util@0.8.3': @@ -7920,23 +7956,23 @@ snapshots: '@types/babel__core@7.20.5': dependencies: '@babel/parser': 7.25.4 - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 '@types/babel__generator': 7.6.8 '@types/babel__template': 7.4.4 '@types/babel__traverse': 7.20.6 '@types/babel__generator@7.6.8': dependencies: - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 '@types/babel__template@7.4.4': dependencies: '@babel/parser': 7.25.4 - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 '@types/babel__traverse@7.20.6': dependencies: - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 '@types/braces@3.0.4': {} @@ -8245,23 +8281,10 @@ snapshots: vscode-languageserver-textdocument: 1.0.11 vscode-uri: 3.0.8 - '@volar/kit@2.4.0-alpha.18(typescript@5.5.4)': - dependencies: - '@volar/language-service': 2.4.0-alpha.18 - '@volar/typescript': 2.4.0-alpha.18 - typesafe-path: 0.2.2 - typescript: 5.5.4 - vscode-languageserver-textdocument: 1.0.11 - vscode-uri: 3.0.8 - '@volar/language-core@2.4.0': dependencies: '@volar/source-map': 2.4.0 - '@volar/language-core@2.4.0-alpha.18': - dependencies: - '@volar/source-map': 2.4.0-alpha.18 - '@volar/language-server@2.4.0': dependencies: '@volar/language-core': 2.4.0 @@ -8274,19 +8297,6 @@ snapshots: vscode-languageserver-textdocument: 1.0.11 vscode-uri: 3.0.8 - '@volar/language-server@2.4.0-alpha.18': - dependencies: - '@volar/language-core': 2.4.0-alpha.18 - '@volar/language-service': 2.4.0-alpha.18 - '@volar/snapshot-document': 2.4.0-alpha.18 - '@volar/typescript': 2.4.0-alpha.18 - path-browserify: 1.0.1 - request-light: 0.7.0 - vscode-languageserver: 9.0.1 - vscode-languageserver-protocol: 3.17.5 - vscode-languageserver-textdocument: 1.0.11 - vscode-uri: 3.0.8 - '@volar/language-service@2.4.0': dependencies: '@volar/language-core': 2.4.0 @@ -8294,34 +8304,14 @@ snapshots: vscode-languageserver-textdocument: 1.0.11 vscode-uri: 3.0.8 - '@volar/language-service@2.4.0-alpha.18': - dependencies: - '@volar/language-core': 2.4.0-alpha.18 - vscode-languageserver-protocol: 3.17.5 - vscode-languageserver-textdocument: 1.0.11 - vscode-uri: 3.0.8 - - '@volar/snapshot-document@2.4.0-alpha.18': - dependencies: - vscode-languageserver-protocol: 3.17.5 - vscode-languageserver-textdocument: 1.0.11 - '@volar/source-map@2.4.0': {} - '@volar/source-map@2.4.0-alpha.18': {} - '@volar/typescript@2.4.0': dependencies: '@volar/language-core': 2.4.0 path-browserify: 1.0.1 vscode-uri: 3.0.8 - '@volar/typescript@2.4.0-alpha.18': - dependencies: - '@volar/language-core': 2.4.0-alpha.18 - path-browserify: 1.0.1 - vscode-uri: 3.0.8 - '@vscode/emmet-helper@2.9.3': dependencies: emmet: 2.4.7 @@ -8464,14 +8454,6 @@ snapshots: dependencies: astro: 4.15.1(@types/node@20.14.13)(rollup@4.21.0)(typescript@5.5.4) - astro-seo@0.8.4(typescript@5.5.4): - dependencies: - '@astrojs/check': 0.5.10(typescript@5.5.4) - transitivePeerDependencies: - - prettier - - prettier-plugin-astro - - typescript - astro-theme-provider@0.6.1(astro@4.15.1(@types/node@20.14.13)(rollup@4.21.0)(typescript@5.5.4)): dependencies: astro: 4.15.1(@types/node@20.14.13)(rollup@4.21.0)(typescript@5.5.4) @@ -8489,7 +8471,7 @@ snapshots: '@astrojs/telemetry': 3.1.0 '@babel/core': 7.25.2 '@babel/plugin-transform-react-jsx': 7.25.2(@babel/core@7.25.2) - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 '@oslojs/encoding': 0.4.1 '@rollup/pluginutils': 5.1.0(rollup@4.21.0) '@types/babel__core': 7.20.5 @@ -8534,11 +8516,11 @@ snapshots: prompts: 2.4.2 rehype: 13.0.1 semver: 7.6.3 - shiki: 1.14.1 + shiki: 1.16.2 string-width: 7.2.0 strip-ansi: 7.1.0 tinyexec: 0.3.0 - tsconfck: 3.1.1(typescript@5.5.4) + tsconfck: 3.1.3(typescript@5.5.4) unist-util-visit: 5.0.0 vfile: 6.0.3 vite: 5.4.2(@types/node@20.14.13) @@ -8550,7 +8532,7 @@ snapshots: zod-to-json-schema: 3.23.2(zod@3.23.8) zod-to-ts: 1.2.0(typescript@5.5.4)(zod@3.23.8) optionalDependencies: - sharp: 0.33.4 + sharp: 0.33.5 transitivePeerDependencies: - '@types/node' - less @@ -8572,7 +8554,7 @@ snapshots: '@astrojs/telemetry': 3.1.0 '@babel/core': 7.25.2 '@babel/plugin-transform-react-jsx': 7.25.2(@babel/core@7.25.2) - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 '@oslojs/encoding': 0.4.1 '@rollup/pluginutils': 5.1.0(rollup@4.21.0) '@types/babel__core': 7.20.5 @@ -8617,11 +8599,11 @@ snapshots: prompts: 2.4.2 rehype: 13.0.1 semver: 7.6.3 - shiki: 1.14.1 + shiki: 1.16.2 string-width: 7.2.0 strip-ansi: 7.1.0 tinyexec: 0.3.0 - tsconfck: 3.1.1(typescript@5.5.4) + tsconfck: 3.1.3(typescript@5.5.4) unist-util-visit: 5.0.0 vfile: 6.0.3 vite: 5.4.2(@types/node@22.0.0) @@ -8633,7 +8615,7 @@ snapshots: zod-to-json-schema: 3.23.2(zod@3.23.8) zod-to-ts: 1.2.0(typescript@5.5.4)(zod@3.23.8) optionalDependencies: - sharp: 0.33.4 + sharp: 0.33.5 transitivePeerDependencies: - '@types/node' - less @@ -8716,7 +8698,7 @@ snapshots: zod-to-json-schema: 3.23.2(zod@3.23.8) zod-to-ts: 1.2.0(typescript@5.5.4)(zod@3.23.8) optionalDependencies: - sharp: 0.33.4 + sharp: 0.33.5 transitivePeerDependencies: - '@types/node' - less @@ -8799,7 +8781,7 @@ snapshots: zod-to-json-schema: 3.23.2(zod@3.23.8) zod-to-ts: 1.2.0(typescript@5.5.4)(zod@3.23.8) optionalDependencies: - sharp: 0.33.4 + sharp: 0.33.5 transitivePeerDependencies: - '@types/node' - less @@ -8992,10 +8974,6 @@ snapshots: cli-boxes@3.0.0: {} - cli-cursor@4.0.0: - dependencies: - restore-cursor: 4.0.0 - cli-cursor@5.0.0: dependencies: restore-cursor: 5.1.0 @@ -9646,7 +9624,7 @@ snapshots: devlop: 1.1.0 hast-util-from-parse5: 8.0.1 parse5: 7.1.2 - vfile: 6.0.2 + vfile: 6.0.3 vfile-message: 4.0.2 hast-util-from-parse5@8.0.1: @@ -10084,6 +10062,12 @@ snapshots: dependencies: p-locate: 5.0.0 + lodash.castarray@4.4.0: {} + + lodash.isplainobject@4.0.6: {} + + lodash.merge@4.6.2: {} + lodash.startcase@4.4.0: {} lodash@4.17.21: {} @@ -10133,7 +10117,7 @@ snapshots: magicast@0.3.5: dependencies: '@babel/parser': 7.25.4 - '@babel/types': 7.25.4 + '@babel/types': 7.25.6 source-map-js: 1.2.0 markdown-extensions@2.0.0: {} @@ -10685,8 +10669,6 @@ snapshots: mime@3.0.0: {} - mimic-fn@2.1.0: {} - mimic-function@5.0.1: {} miniflare@3.20240718.1: @@ -10823,10 +10805,6 @@ snapshots: dependencies: wrappy: 1.0.2 - onetime@5.1.2: - dependencies: - mimic-fn: 2.1.0 - onetime@7.0.0: dependencies: mimic-function: 5.0.1 @@ -10838,18 +10816,6 @@ snapshots: is-inside-container: 1.0.0 is-wsl: 3.1.0 - ora@8.0.1: - dependencies: - chalk: 5.3.0 - cli-cursor: 4.0.0 - cli-spinners: 2.9.2 - is-interactive: 2.0.0 - is-unicode-supported: 2.0.0 - log-symbols: 6.0.0 - stdin-discarder: 0.2.2 - string-width: 7.2.0 - strip-ansi: 7.1.0 - ora@8.1.0: dependencies: chalk: 5.3.0 @@ -11047,6 +11013,11 @@ snapshots: postcss: 8.4.41 postcss-selector-parser: 6.1.1 + postcss-selector-parser@6.0.10: + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + postcss-selector-parser@6.1.1: dependencies: cssesc: 3.0.0 @@ -11211,7 +11182,7 @@ snapshots: dependencies: '@types/hast': 3.0.4 hast-util-raw: 9.0.4 - vfile: 6.0.2 + vfile: 6.0.3 rehype-stringify@10.0.0: dependencies: @@ -11321,11 +11292,6 @@ snapshots: path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 - restore-cursor@4.0.0: - dependencies: - onetime: 5.1.2 - signal-exit: 3.0.7 - restore-cursor@5.1.0: dependencies: onetime: 7.0.0 @@ -11470,6 +11436,33 @@ snapshots: '@img/sharp-win32-ia32': 0.33.4 '@img/sharp-win32-x64': 0.33.4 + sharp@0.33.5: + dependencies: + color: 4.2.3 + detect-libc: 2.0.3 + semver: 7.6.3 + optionalDependencies: + '@img/sharp-darwin-arm64': 0.33.5 + '@img/sharp-darwin-x64': 0.33.5 + '@img/sharp-libvips-darwin-arm64': 1.0.4 + '@img/sharp-libvips-darwin-x64': 1.0.4 + '@img/sharp-libvips-linux-arm': 1.0.5 + '@img/sharp-libvips-linux-arm64': 1.0.4 + '@img/sharp-libvips-linux-s390x': 1.0.4 + '@img/sharp-libvips-linux-x64': 1.0.4 + '@img/sharp-libvips-linuxmusl-arm64': 1.0.4 + '@img/sharp-libvips-linuxmusl-x64': 1.0.4 + '@img/sharp-linux-arm': 0.33.5 + '@img/sharp-linux-arm64': 0.33.5 + '@img/sharp-linux-s390x': 0.33.5 + '@img/sharp-linux-x64': 0.33.5 + '@img/sharp-linuxmusl-arm64': 0.33.5 + '@img/sharp-linuxmusl-x64': 0.33.5 + '@img/sharp-wasm32': 0.33.5 + '@img/sharp-win32-ia32': 0.33.5 + '@img/sharp-win32-x64': 0.33.5 + optional: true + shebang-command@1.2.0: dependencies: shebang-regex: 1.0.0 @@ -11740,10 +11733,6 @@ snapshots: ts-interface-checker@0.1.13: {} - tsconfck@3.1.1(typescript@5.5.4): - optionalDependencies: - typescript: 5.5.4 - tsconfck@3.1.3(typescript@5.5.4): optionalDependencies: typescript: 5.5.4 @@ -11768,7 +11757,7 @@ snapshots: lunr: 2.3.9 markdown-it: 14.1.0 minimatch: 9.0.5 - shiki: 1.14.1 + shiki: 1.16.2 typescript: 5.5.4 yaml: 2.5.0 @@ -11974,14 +11963,6 @@ snapshots: optionalDependencies: vite: 5.4.2(@types/node@22.0.0) - volar-service-css@0.0.59(@volar/language-service@2.4.0-alpha.18): - dependencies: - vscode-css-languageservice: 6.3.0 - vscode-languageserver-textdocument: 1.0.11 - vscode-uri: 3.0.8 - optionalDependencies: - '@volar/language-service': 2.4.0-alpha.18 - volar-service-css@0.0.61(@volar/language-service@2.4.0): dependencies: vscode-css-languageservice: 6.3.0 @@ -11990,15 +11971,6 @@ snapshots: optionalDependencies: '@volar/language-service': 2.4.0 - volar-service-emmet@0.0.59(@volar/language-service@2.4.0-alpha.18): - dependencies: - '@emmetio/css-parser': 0.4.0 - '@emmetio/html-matcher': 1.3.0 - '@vscode/emmet-helper': 2.9.3 - vscode-uri: 3.0.8 - optionalDependencies: - '@volar/language-service': 2.4.0-alpha.18 - volar-service-emmet@0.0.61(@volar/language-service@2.4.0): dependencies: '@emmetio/css-parser': 0.4.0 @@ -12008,14 +11980,6 @@ snapshots: optionalDependencies: '@volar/language-service': 2.4.0 - volar-service-html@0.0.59(@volar/language-service@2.4.0-alpha.18): - dependencies: - vscode-html-languageservice: 5.3.0 - vscode-languageserver-textdocument: 1.0.11 - vscode-uri: 3.0.8 - optionalDependencies: - '@volar/language-service': 2.4.0-alpha.18 - volar-service-html@0.0.61(@volar/language-service@2.4.0): dependencies: vscode-html-languageservice: 5.3.0 @@ -12024,41 +11988,18 @@ snapshots: optionalDependencies: '@volar/language-service': 2.4.0 - volar-service-prettier@0.0.59(@volar/language-service@2.4.0-alpha.18): - dependencies: - vscode-uri: 3.0.8 - optionalDependencies: - '@volar/language-service': 2.4.0-alpha.18 - volar-service-prettier@0.0.61(@volar/language-service@2.4.0): dependencies: vscode-uri: 3.0.8 optionalDependencies: '@volar/language-service': 2.4.0 - volar-service-typescript-twoslash-queries@0.0.59(@volar/language-service@2.4.0-alpha.18): - dependencies: - vscode-uri: 3.0.8 - optionalDependencies: - '@volar/language-service': 2.4.0-alpha.18 - volar-service-typescript-twoslash-queries@0.0.61(@volar/language-service@2.4.0): dependencies: vscode-uri: 3.0.8 optionalDependencies: '@volar/language-service': 2.4.0 - volar-service-typescript@0.0.59(@volar/language-service@2.4.0-alpha.18): - dependencies: - path-browserify: 1.0.1 - semver: 7.6.3 - typescript-auto-import-cache: 0.3.3 - vscode-languageserver-textdocument: 1.0.11 - vscode-nls: 5.2.0 - vscode-uri: 3.0.8 - optionalDependencies: - '@volar/language-service': 2.4.0-alpha.18 - volar-service-typescript@0.0.61(@volar/language-service@2.4.0): dependencies: path-browserify: 1.0.1 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 1b9e373b5..7dcb85f0a 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -30,7 +30,6 @@ catalogs: tailwind-scrollbar: ^3.1.0 astro-font: ^0.1.81 astro-icon: ^1.1.1 - astro-seo: ^0.8.4 docs: '@shoelace-style/shoelace': ^2.16.0 "@types/hast": ^3.0.4 diff --git a/www/docs/astro.config.mts b/www/docs/astro.config.mts index d79c3d05d..e70e0dfb1 100644 --- a/www/docs/astro.config.mts +++ b/www/docs/astro.config.mts @@ -23,7 +23,7 @@ const [tdRenderers, tdRenderersSideBar] = createStarlightTypeDocPlugin(); const [tdRobotsTxt, tdRobotsTxtSideBar] = createStarlightTypeDocPlugin(); // Define the Site URL -const site = getCoolifyURL(true) || 'https://docs.astro-studiocms.xyz/'; +const site = getCoolifyURL(true) || 'https://docs.studiocms.xyz/'; // Utility function to create TypeDoc related paths function getFilePathToPackage(name: string, path: string) { @@ -66,7 +66,7 @@ export default defineConfig({ { tag: 'script', attrs: { - src: 'https://analytics.astro-studiocms.xyz/script.js', + src: 'https://analytics.studiocms.xyz/script.js', 'data-website-id': '00717cde-0d92-42be-8f49-8de0b1d810b2', defer: true, }, diff --git a/www/docs/src/starlightOverrides/SiteTitle.astro b/www/docs/src/starlightOverrides/SiteTitle.astro index 0f450e197..6ddfc1f1d 100644 --- a/www/docs/src/starlightOverrides/SiteTitle.astro +++ b/www/docs/src/starlightOverrides/SiteTitle.astro @@ -8,10 +8,10 @@ import type { Props } from '@astrojs/starlight/props'; diff --git a/www/web/astro.config.mts b/www/web/astro.config.mts index e254e75ea..0ad01d373 100644 --- a/www/web/astro.config.mts +++ b/www/web/astro.config.mts @@ -5,7 +5,7 @@ import { getCoolifyURL } from '../hostUtils'; // https://astro.build/config export default defineConfig({ - site: getCoolifyURL(true) || 'https://astro-studiocms.xyz', + site: getCoolifyURL(true) || 'https://studiocms.xyz', image: { remotePatterns: [ { diff --git a/www/web/package.json b/www/web/package.json index 21fc2604e..59eb9e826 100644 --- a/www/web/package.json +++ b/www/web/package.json @@ -15,14 +15,15 @@ "astro": "catalog:", "astro-font": "catalog:landing", "astro-icon": "catalog:landing", - "astro-seo": "catalog:landing", "motion": "catalog:landing", "powerglitch": "catalog:landing", + "sharp": "^0.33.4", "tailwind-merge": "catalog:landing", + "tailwind-scrollbar": "catalog:landing", "tailwindcss": "catalog:landing", "typescript": "catalog:" }, "devDependencies": { - "tailwind-scrollbar": "catalog:landing" + "@tailwindcss/typography": "^0.5.15" } } diff --git a/www/web/src/components/BlogCard.astro b/www/web/src/components/BlogCard.astro new file mode 100644 index 000000000..bad07c2c8 --- /dev/null +++ b/www/web/src/components/BlogCard.astro @@ -0,0 +1,44 @@ +--- +import { Image } from 'astro:assets'; +import { type CollectionEntry, getEntry } from 'astro:content'; + +export interface Props { + post: CollectionEntry<'blog'>; + index: number; +} + +const { post, index } = Astro.props; + +const href = `/blog/${post.slug}`; +const { + title, + description, + publishDate, + hero: { image, alt }, + author, +} = post.data; + +const authorData = await getEntry(author); +const { name, avatar } = authorData.data; +--- + + +
+ { +

{ title }

+

{ description }

+ +
+ { +
+

{ name }

+

{ publishDate.toLocaleDateString('en-US', { day: '2-digit', month: 'long', year: 'numeric' }) }

+
+
+
+
\ No newline at end of file diff --git a/www/web/src/components/Head.astro b/www/web/src/components/Head.astro index 14ac85eeb..e7d2a5d09 100644 --- a/www/web/src/components/Head.astro +++ b/www/web/src/components/Head.astro @@ -1,34 +1,45 @@ --- import { AstroFont } from 'astro-font'; -import { SEO } from 'astro-seo'; const OgBanner = new URL('/og.png', Astro.url); import ThemeManager from './ThemeManager.astro'; + +interface Props { + title?: string; + ogImage?: URL | undefined; +} + +const { title, ogImage = OgBanner } = Astro.props; + +const studioTitle = `StudioCMS${title ? ` - ${title}` : ''}`; +const description = 'A dedicated CMS for Astro DB.'; --- - + - StudioCMS + {studioTitle} + + + + + + + + + + + + + - -
-
- + +