diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 2a99ef3b..774b2633 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -25,6 +25,8 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v4 + with: + node-version: '20' - name: Cache dependencies uses: actions/cache@v4 diff --git a/docs/.vuepress/config.js b/docs/.vuepress/config.js index fb3a6cc9..b2964673 100644 --- a/docs/.vuepress/config.js +++ b/docs/.vuepress/config.js @@ -2,29 +2,63 @@ import fs from 'fs' import path from 'path' import dotenv from 'dotenv' -import { defaultTheme, viteBundler } from 'vuepress' +import {viteBundler} from '@vuepress/bundler-vite' +import {defaultTheme} from '@vuepress/theme-default' +import {defineUserConfig} from 'vuepress' dotenv.config() +function getChildren(folder, sort = 'asc') { + const extension = ['.md'] + const names = ['index.md', 'readme.md'] + + const dir = `${__dirname}/../${folder}` + + return fs + .readdirSync(path.join(dir)) + .filter(item => + fs.statSync(path.join(dir, item)).isFile() && + !names.includes(item.toLowerCase()) && + extension.includes(path.extname(item)) + ) + .sort((a, b) => { + a = resolveNumeric(a) + b = resolveNumeric(b) + + if (a < b) return sort === 'asc' ? -1 : 1 + if (a > b) return sort === 'asc' ? 1 : -1 + + return 0 + }).map(item => `/${folder}/${item}`) +} + +function resolveNumeric(value) { + const sub = value.substring(0, value.indexOf('.')) + + const num = Number(sub) + + return isNaN(num) ? value : num +} + const hostname = 'actions.dragon-code.pro' -module.exports = { +export default defineUserConfig({ + bundler: viteBundler(), + lang: 'en-US', title: 'Dragon Code: Actions', description: 'Performing actions with saving the list of called files', head: [ - ['link', { rel: 'icon', href: `https://${ hostname }/images/logo.svg` }], - ['meta', { name: 'twitter:image', content: `https://${ hostname }/images/logo.svg` }] + ['link', {rel: 'icon', href: `https://${hostname}/images/logo.svg`}], + ['meta', {name: 'twitter:image', content: `https://${hostname}/images/logo.svg`}] ], - bundler: viteBundler(), - theme: defaultTheme({ hostname, base: '/', - logo: `https://${ hostname }/images/logo.svg`, + logo: `https://${hostname}/images/logo.svg`, repo: 'https://github.com/TheDragonCode/laravel-actions', repoLabel: 'GitHub', @@ -36,7 +70,7 @@ module.exports = { editLink: true, navbar: [ - { text: '4.x', link: '/prologue/changelog/4.x.md' } + {text: '4.x', link: '/prologue/changelog/4.x.md'} ], sidebarDepth: 1, @@ -83,36 +117,4 @@ module.exports = { } ] }) -} - -function getChildren(folder, sort = 'asc') { - const extension = ['.md'] - const names = ['index.md', 'readme.md'] - - const dir = `${ __dirname }/../${ folder }` - - return fs - .readdirSync(path.join(dir)) - .filter(item => - fs.statSync(path.join(dir, item)).isFile() && - ! names.includes(item.toLowerCase()) && - extension.includes(path.extname(item)) - ) - .sort((a, b) => { - a = resolveNumeric(a) - b = resolveNumeric(b) - - if (a < b) return sort === 'asc' ? -1 : 1 - if (a > b) return sort === 'asc' ? 1 : -1 - - return 0 - }).map(item => `/${ folder }/${ item }`) -} - -function resolveNumeric(value) { - const sub = value.substring(0, value.indexOf('.')) - - const num = Number(sub) - - return isNaN(num) ? value : num -} +}) diff --git a/package.json b/package.json index 8bb7a47a..b22c318b 100644 --- a/package.json +++ b/package.json @@ -17,12 +17,13 @@ "url": "git+ssh://git@github.com/TheDragonCode/laravel-actions.git" }, "devDependencies": { - "@vuepress/plugin-theme-data": "2.0.0-rc.8", + "@vuepress/bundler-vite": "^2.0.0-rc.8", + "@vuepress/theme-default": "^2.0.0-rc.20", "@vueuse/core": "^7.5.5", "dotenv": "^15.0.0", - "vuepress": "2.0.0-rc.8" + "vuepress": "^2.0.0-rc.8" }, "engines": { - "node": ">=16.16" + "node": ">=20.11" } }