mirror of
https://github.com/m1ngsama/FUJI.git
synced 2025-12-25 02:56:38 +00:00
Merge branch 'main' into deps
This commit is contained in:
commit
edab0d43c8
19 changed files with 836 additions and 1660 deletions
218
astro.config.mts
218
astro.config.mts
|
|
@ -1,221 +1,23 @@
|
||||||
// @ts-check
|
|
||||||
|
|
||||||
import { defineConfig } from "astro/config"
|
import { defineConfig } from "astro/config"
|
||||||
import { SITE_URL } from "./src/consts"
|
import { SITE_URL } from "./src/consts"
|
||||||
import vue from "@astrojs/vue"
|
import vue from "@astrojs/vue"
|
||||||
import { visit } from "unist-util-visit"
|
|
||||||
import tailwind from "@astrojs/tailwind"
|
import tailwind from "@astrojs/tailwind"
|
||||||
import react from "@astrojs/react"
|
import react from "@astrojs/react"
|
||||||
import md5 from "md5"
|
import { handleLocalCoverPlugin } from "./src/plugins/cover"
|
||||||
import { type RehypePlugin } from "@astrojs/markdown-remark"
|
import { themePipeline } from "./src/plugins/theme"
|
||||||
import path from "path"
|
|
||||||
import { convertImageToBase64URL } from "./src/utils/image"
|
|
||||||
|
|
||||||
function pipeline() {
|
|
||||||
return [
|
|
||||||
() => tree => {
|
|
||||||
visit(tree, "element", (node, index) => {
|
|
||||||
if (node.tagName === "p" && node.children[0].tagName === "img") {
|
|
||||||
node.tagName = "figure"
|
|
||||||
let img = node.children[0]
|
|
||||||
let sign = md5(img.properties.src)
|
|
||||||
let data = img.properties.alt.split("|")
|
|
||||||
let alt = data[0]
|
|
||||||
let size = "big"
|
|
||||||
if (data.length > 1) {
|
|
||||||
size = data[1]
|
|
||||||
}
|
|
||||||
let classes = ["image component image-full-bleed body-copy-wide nr-scroll-animation nr-scroll-animation--on"]
|
|
||||||
classes.push(`image-${size}`)
|
|
||||||
node.properties.className = classes
|
|
||||||
node.children = [
|
|
||||||
{
|
|
||||||
type: "element",
|
|
||||||
tagName: "div",
|
|
||||||
properties: {
|
|
||||||
className: ["component-content"],
|
|
||||||
},
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
type: "element",
|
|
||||||
tagName: "div",
|
|
||||||
properties: {
|
|
||||||
className: ["image-share-sheet"],
|
|
||||||
},
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
type: "element",
|
|
||||||
tagName: "div",
|
|
||||||
properties: {
|
|
||||||
className: [`image image-loaded image-asset image-${sign}`],
|
|
||||||
id: `lht${sign}`,
|
|
||||||
},
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
type: "element",
|
|
||||||
tagName: "picture",
|
|
||||||
properties: {
|
|
||||||
className: ["picture"],
|
|
||||||
},
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
type: "element",
|
|
||||||
tagName: "img",
|
|
||||||
properties: {
|
|
||||||
src: img.properties.src,
|
|
||||||
alt: alt,
|
|
||||||
className: ["picture-image"],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
{
|
|
||||||
type: "element",
|
|
||||||
tagName: "div",
|
|
||||||
properties: {
|
|
||||||
className: ["image-description"],
|
|
||||||
},
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
type: "element",
|
|
||||||
tagName: "div",
|
|
||||||
properties: {
|
|
||||||
className: ["image-caption"],
|
|
||||||
},
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
type: "text",
|
|
||||||
value: alt,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
]
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
() => tree => {
|
|
||||||
tree.children.forEach(node => {
|
|
||||||
if (node.type === "raw") {
|
|
||||||
node.value = `<div class="page-body code component"><div class="component-content code"> ${node.value} </div></div>`
|
|
||||||
// node.value = node.value.replace(/astro-code/g, 'astro-code')
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
() => tree => {
|
|
||||||
for (let i = 0; i < tree.children.length; i++) {
|
|
||||||
const node = tree.children[i]
|
|
||||||
if (node.type === "element" && ["p", "h1", "h2", "h3", "h4", "h5", "h6", "table"].includes(node.tagName)) {
|
|
||||||
let next = tree.children[i + 1]
|
|
||||||
const nodes = [node]
|
|
||||||
while (next && !["figure"].includes(next.tagName) && next.type != "raw") {
|
|
||||||
nodes.push(next)
|
|
||||||
next = tree.children[tree.children.indexOf(next) + 1]
|
|
||||||
}
|
|
||||||
if (nodes.length > 1) {
|
|
||||||
// rename label
|
|
||||||
nodes.forEach(node => {
|
|
||||||
if (node.tagName === "p") {
|
|
||||||
node.properties.className = ["page-body-copy"]
|
|
||||||
node.tagName = "div"
|
|
||||||
}
|
|
||||||
if (["h1", "h2", "h3", "h4", "h5", "h6"].includes(node.tagName)) {
|
|
||||||
node.properties.className = ["page-body-header"]
|
|
||||||
}
|
|
||||||
})
|
|
||||||
tree.children.splice(i, nodes.length, {
|
|
||||||
type: "element",
|
|
||||||
tagName: "div",
|
|
||||||
properties: {
|
|
||||||
className: ["page-body text component"],
|
|
||||||
},
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
type: "element",
|
|
||||||
tagName: "div",
|
|
||||||
properties: {
|
|
||||||
className: ["component-content"],
|
|
||||||
},
|
|
||||||
children: nodes,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
() => tree => {
|
|
||||||
const len = tree.children.length
|
|
||||||
for (let index = 0; index < len; index++) {
|
|
||||||
const node = tree.children[index]
|
|
||||||
if (node.type === "element" && node.tagName === "figure") {
|
|
||||||
tree.children.splice(index, 0, {
|
|
||||||
type: "element",
|
|
||||||
tagName: "div",
|
|
||||||
properties: {
|
|
||||||
className: ["tertiary-nav component"],
|
|
||||||
},
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
type: "element",
|
|
||||||
tagName: "div",
|
|
||||||
properties: {
|
|
||||||
className: ["component-content"],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
],
|
|
||||||
})
|
|
||||||
index++
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
]
|
|
||||||
}
|
|
||||||
|
|
||||||
const handleLocalCoverPlugin: RehypePlugin = () => {
|
|
||||||
return async (tree, file) => {
|
|
||||||
const filePath = file.history[0]
|
|
||||||
type AstroData = {
|
|
||||||
frontmatter: {
|
|
||||||
cover:
|
|
||||||
| {
|
|
||||||
url: string
|
|
||||||
}
|
|
||||||
| string
|
|
||||||
| undefined
|
|
||||||
}
|
|
||||||
}
|
|
||||||
const astroData = file.data.astro as AstroData
|
|
||||||
if (!astroData.frontmatter.cover) {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
const coverUrl = typeof astroData.frontmatter.cover === "string" ? astroData.frontmatter.cover : astroData.frontmatter.cover.url
|
|
||||||
if (coverUrl.includes("http")) {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
const url = path.resolve(path.dirname(filePath), coverUrl)
|
|
||||||
const dataURL = await convertImageToBase64URL(url)
|
|
||||||
if (typeof astroData.frontmatter.cover === "string") {
|
|
||||||
astroData.frontmatter.cover = dataURL
|
|
||||||
} else {
|
|
||||||
astroData.frontmatter.cover.url = dataURL
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// https://astro.build/config
|
// https://astro.build/config
|
||||||
export default defineConfig({
|
export default defineConfig({
|
||||||
site: SITE_URL,
|
site: SITE_URL,
|
||||||
markdown: {
|
markdown: {
|
||||||
rehypePlugins: [handleLocalCoverPlugin, ...pipeline()],
|
rehypePlugins: [handleLocalCoverPlugin, ...themePipeline],
|
||||||
syntaxHighlight: "prism",
|
syntaxHighlight: "shiki",
|
||||||
|
shikiConfig: {
|
||||||
|
themes: {
|
||||||
|
light: 'github-light',
|
||||||
|
dark: 'github-dark',
|
||||||
|
},
|
||||||
|
}
|
||||||
},
|
},
|
||||||
integrations: [
|
integrations: [
|
||||||
vue(),
|
vue(),
|
||||||
|
|
|
||||||
|
|
@ -20,6 +20,7 @@
|
||||||
"openapi",
|
"openapi",
|
||||||
"Rehype",
|
"Rehype",
|
||||||
"rehypePlugins",
|
"rehypePlugins",
|
||||||
|
"shiki",
|
||||||
"tseslint"
|
"tseslint"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
|
||||||
591
pnpm-lock.yaml
591
pnpm-lock.yaml
|
|
@ -10,7 +10,7 @@ importers:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@astrojs/react':
|
'@astrojs/react':
|
||||||
specifier: ^3.6.2
|
specifier: ^3.6.2
|
||||||
version: 3.6.2(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(vite@5.4.11(@types/node@20.14.9))
|
version: 3.6.2(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(vite@5.4.14(@types/node@20.14.9))
|
||||||
'@astrojs/rss':
|
'@astrojs/rss':
|
||||||
specifier: ^4.0.7
|
specifier: ^4.0.7
|
||||||
version: 4.0.7
|
version: 4.0.7
|
||||||
|
|
@ -19,7 +19,7 @@ importers:
|
||||||
version: 5.1.1(astro@4.16.18(@types/node@20.14.9)(rollup@4.22.5)(typescript@5.6.2))(tailwindcss@3.4.13)
|
version: 5.1.1(astro@4.16.18(@types/node@20.14.9)(rollup@4.22.5)(typescript@5.6.2))(tailwindcss@3.4.13)
|
||||||
'@astrojs/vue':
|
'@astrojs/vue':
|
||||||
specifier: ^4.5.1
|
specifier: ^4.5.1
|
||||||
version: 4.5.1(astro@4.16.18(@types/node@20.14.9)(rollup@4.22.5)(typescript@5.6.2))(rollup@4.22.5)(vite@5.4.11(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2))
|
version: 4.5.1(astro@4.16.18(@types/node@20.14.9)(rollup@4.22.5)(typescript@5.6.2))(rollup@4.22.5)(vite@5.4.14(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2))
|
||||||
'@fullcalendar/core':
|
'@fullcalendar/core':
|
||||||
specifier: ^6.1.15
|
specifier: ^6.1.15
|
||||||
version: 6.1.15
|
version: 6.1.15
|
||||||
|
|
@ -1588,6 +1588,529 @@ packages:
|
||||||
'@logto/js@4.2.0':
|
'@logto/js@4.2.0':
|
||||||
resolution: {integrity: sha512-kse29kNKuM/tw30YcOf2eOQuFBlGPZTr4rKI/LpdTKhk0fLGM5ZJKPQWNPiPFZdBfTldERXVNtd17/bZLWc/OQ==}
|
resolution: {integrity: sha512-kse29kNKuM/tw30YcOf2eOQuFBlGPZTr4rKI/LpdTKhk0fLGM5ZJKPQWNPiPFZdBfTldERXVNtd17/bZLWc/OQ==}
|
||||||
|
|
||||||
|
'@nextui-org/accordion@2.0.40':
|
||||||
|
resolution: {integrity: sha512-aJmhflLOXOFTjbBWlWto30hYzimw+sw1EZwSRG9CdxbjRact2dRfCLsZQmHkJW2ifVx51g/qLNE2NSFAi2L8dA==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/accordion instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
framer-motion: '>=10.17.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/aria-utils@2.0.26':
|
||||||
|
resolution: {integrity: sha512-e81HxkNI3/HCPPJT9OVK0g0ivTkuqeeQ043WlAxvgf+upFTEvNN5vmsSKBfWGgfZpsVHgNyHIzwbHjy9zKePLQ==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/autocomplete@2.1.7':
|
||||||
|
resolution: {integrity: sha512-T3dF5akCXvJ21OxwPxAQmTjHoiB/GMUa2ppcJ9PStfCCPiI2vjwb4CO4q/duj/nXJIpQf/UfPhpSonnJ444o6g==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/autocomplete instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
framer-motion: '>=10.17.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/avatar@2.0.33':
|
||||||
|
resolution: {integrity: sha512-SPnIKM+34T/a+KCRCBiG8VwMBzu2/bap7IPHhmICtQ6KmG8Dzmazj3tGZsVt7HjhMRVY7e1vzev4IMaHqkIdRg==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/avatar instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/badge@2.0.32':
|
||||||
|
resolution: {integrity: sha512-vlV/SY0e7/AmpVP7hB57XoSOo95Fr3kRWcLfMx8yL8VDR2UWMFaMlrT7JTghdgTGFSO7L1Ov1BFwDRRKVe3eyg==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/badge instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/breadcrumbs@2.0.13':
|
||||||
|
resolution: {integrity: sha512-tdet47IBOwUaJL0PmxTuGH+ZI2nucyNwG3mX1OokfIXmq5HuMCGKaVFXaNP8mWb4Pii2bvtRqaqTfxmUb3kjGw==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/breadcrumbs instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/button@2.0.38':
|
||||||
|
resolution: {integrity: sha512-XbgyqBv+X7QirXeriGwkqkMOENpAxXRo+jzfMyBMvfsM3kwrFj92OSF1F7/dWDvcW7imVZB9o2Ci7LIppq9ZZQ==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/button instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
framer-motion: '>=10.17.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/calendar@2.0.12':
|
||||||
|
resolution: {integrity: sha512-FnEnOQnsuyN+F+hy4LEJBvZZcfXMpDGgLkTdnDdoZObXQWwd0PWPjU8GzY+ukhhR5eiU7QIj2AADVRCvuAkiLA==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/calendar instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.1.0'
|
||||||
|
'@nextui-org/theme': '>=2.2.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/card@2.0.34':
|
||||||
|
resolution: {integrity: sha512-2RYNPsQkM0FOifGCKmRBR3AuYgYCNmPV7dyA5M3D9Lf0APsHHtsXRA/GeIJ/AuPnglZrYBX8wpM5kLt3dnlQjQ==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/card instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
framer-motion: '>=10.17.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/checkbox@2.1.5':
|
||||||
|
resolution: {integrity: sha512-PSCWmxEzFPfeIJfoGAtbQS5T7JvBRblUMz5NdCMArA8MLvWW8EKL41cMPsqWjaUanjD0fAI8Q9HuDfBZnkcPbw==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/checkbox instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/chip@2.0.33':
|
||||||
|
resolution: {integrity: sha512-6cQkMTV/34iPprjnfK6xlwkv5lnZjMsbYBN3ZqHHrQfV2zQg19ewFcuIw9XlRYA3pGYPpoycdOmSdQ6qXc66lQ==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/chip instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/code@2.0.33':
|
||||||
|
resolution: {integrity: sha512-G2254ov2rsPxFEoJ0UHVHe+rSmNYwoHZc7STAtiTsJ2HfebZPQbNnfuCifMIpa+kgvHrMBGb85eGk0gy1R+ArA==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/code instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/date-input@2.1.4':
|
||||||
|
resolution: {integrity: sha512-U8Pbe7EhMp9VTfFxB/32+A9N9cJJWswebIz1qpaPy0Hmr92AHS3c1qVTcspkop6wbIM8AnHWEST0QkR95IXPDA==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/date-input instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.1.0'
|
||||||
|
'@nextui-org/theme': '>=2.2.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/date-picker@2.1.8':
|
||||||
|
resolution: {integrity: sha512-pokAFcrf6AdM53QHf1EzvqVhj8imQRZHWitK9eZPtIdGzJzx28dW0ir7ID0lQFMiNNIQTesSpBLzedTawbcJrg==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/date-picker instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.1.0'
|
||||||
|
'@nextui-org/theme': '>=2.2.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/divider@2.0.32':
|
||||||
|
resolution: {integrity: sha512-2B2j3VmvVDFnMc9Uw7UWMkByA+osgnRmVwMZNZjl9g3oCycz3UDXotNJXjgsLocT8tGO8UwMcrdgo7QBZl52uw==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/divider instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/dropdown@2.1.31':
|
||||||
|
resolution: {integrity: sha512-tP6c5MAhWK4hJ6U02oX6APUpjjrn97Zn7t+56Xx4YyQOSj0CJx18VF0JsU+MrjFZxPX3UBKU3B2zGBHOEGE4Kw==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/dropdown instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
framer-motion: '>=10.17.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/framer-utils@2.0.25':
|
||||||
|
resolution: {integrity: sha512-bhQKDg4c5Da4II4UYLKyvYagusTd62eVwPqpfUP+GHZKKZcmRaS6MQZTh4xJYbpyh298S4jRSH/AUAiN/OK3TQ==}
|
||||||
|
peerDependencies:
|
||||||
|
framer-motion: '>=10.17.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/image@2.0.32':
|
||||||
|
resolution: {integrity: sha512-JpE0O8qAeJpQA61ZnXNLH76to+dbx93PR5tTOxSvmTxtnuqVg4wl5ar/SBY3czibJPr0sj33k8Mv2EfULjoH7Q==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/image instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/input@2.2.5':
|
||||||
|
resolution: {integrity: sha512-xLgyKcnb+RatRZ62AbCFfTpS3exd2bPSSR75UFKylHHhgX+nvVOkX0dQgmr9e0V8IEECeRvbltw2s/laNFPTtg==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/input instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/kbd@2.0.34':
|
||||||
|
resolution: {integrity: sha512-sO6RJPgEFccFV8gmfYMTVeQ4f9PBYh09OieRpsZhN4HqdfWwEaeT6LrmdBko3XnJ0T6Me3tBrYULgKWcDcNogw==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/kbd instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/link@2.0.35':
|
||||||
|
resolution: {integrity: sha512-0XVUsSsysu+WMssokTlLHiMnjr1N6D2Uh3bIBcdFwSqmTLyq+Llgexlm6Fuv1wADRwsR8/DGFp3Pr826cv2Svg==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/link instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/listbox@2.1.27':
|
||||||
|
resolution: {integrity: sha512-B9HW/k0awfXsYaNyjaqv/GvEioVzrsCsOdSxVQZgQ3wQ6jNXmGRe1/X6IKg0fIa+P0v379kSgAqrZcwfRpKnWw==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/listbox instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/menu@2.0.30':
|
||||||
|
resolution: {integrity: sha512-hZRr/EQ5JxB6yQFmUhDSv9pyLTJmaB4SFC/t5A17UljRhMexlvTU6QpalYIkbY0R/bUXvOkTJNzsRgI5OOQ/aA==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/menu instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/modal@2.0.41':
|
||||||
|
resolution: {integrity: sha512-Sirn319xAf7E4cZqvQ0o0Vd3Xqy0FRSuhOTwp8dALMGTMY61c2nIyurgVCNP6hh8dMvMT7zQEPP9/LE0boFCEQ==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/modal instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
framer-motion: '>=10.17.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/navbar@2.0.37':
|
||||||
|
resolution: {integrity: sha512-HuHXMU+V367LlvSGjqRPBNKmOERLvc4XWceva+KmiT99BLqHmMECkQVTR6ogO36eJUU96aR8JSfAiHLjvw5msw==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/navbar instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
framer-motion: '>=10.17.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/pagination@2.0.36':
|
||||||
|
resolution: {integrity: sha512-VKs2vMj8dybNzb/WkAMmvFBsxdgBvpVihIA4eXSo2ve7fpcLjIF1iPLHuDgpSyv3h3dy009sQTVo3lVTVT1a6w==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/pagination instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/popover@2.1.29':
|
||||||
|
resolution: {integrity: sha512-qGjMnAQVHQNfG571h9Tah2MXPs5mhxcTIj4TuBgwPzQTWXjjeffaHV3FlHdg5PxjTpNZOdDfrg0eRhDqIjKocQ==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/popover instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
framer-motion: '>=10.17.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/progress@2.0.34':
|
||||||
|
resolution: {integrity: sha512-rJmZCrLdufJKLsonJ37oPOEHEpZykD4c+0G749zcKOkRXHOD9DiQian2YoZEE/Yyf3pLdFQG3W9vSLbsgED3PQ==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/progress instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/radio@2.1.5':
|
||||||
|
resolution: {integrity: sha512-0tF/VkMQv+KeYmFQpkrpz9S7j7U8gqCet+F97Cz7fFjdb+Q3w9waBzg84QayD7EZdjsYW4FNSkjPeiBhLdVUsw==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/radio instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/react-rsc-utils@2.0.14':
|
||||||
|
resolution: {integrity: sha512-s0GVgDhScyx+d9FtXd8BXf049REyaPvWsO4RRr7JDHrk91NlQ11Mqxka9o+8g5NX0rphI0rbe3/b1Dz+iQRx3w==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/react-utils@2.0.17':
|
||||||
|
resolution: {integrity: sha512-U/b49hToVfhOM4dg4n57ZyUjLpts4JogQ139lfQBYPTb8z/ATNsJ3vLIqW5ZvDK6L0Er+JT11UVQ+03m7QMvaQ==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/react@2.4.8':
|
||||||
|
resolution: {integrity: sha512-ZwXg6As3A+Gs+Jyc42t4MHNupHEsh9YmEaypE20ikqIPTCLQnrGQ/RWOGwzZ2a9kZWbZ89a/3rJwZMRKdcemxg==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/react instead.
|
||||||
|
peerDependencies:
|
||||||
|
framer-motion: '>=10.17.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/ripple@2.0.33':
|
||||||
|
resolution: {integrity: sha512-Zsa60CXtGCF7weTCFbSfT0OlxlGHdd5b/sSJTYrmMZRHOIUpHW8kT0bxVYF/6X8nCCJYxzBKXUqdE3Y31fhNeQ==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/ripple instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
framer-motion: '>=10.17.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/scroll-shadow@2.1.20':
|
||||||
|
resolution: {integrity: sha512-8ULiUmbZ/Jzr1okI8Yzjzl5M4Ow3pJEm34hT5id0EaMIgklNa3Nnp/Dyp54JwwUbI8Kt3jOAMqkPitGIZyo5Ag==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/scroll-shadow instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/select@2.2.7':
|
||||||
|
resolution: {integrity: sha512-lA2EOjquhiHmLSInHFEarq64ZOQV37+ry1d8kvsqJ7R9dsqw1QEuMzH2Kk8/NqwrYMccHh5iAZ7PaLp90NSSxg==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/select instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
framer-motion: '>=10.17.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/shared-icons@2.0.9':
|
||||||
|
resolution: {integrity: sha512-WG3yinVY7Tk9VqJgcdF4V8Ok9+fcm5ey7S1els7kujrfqLYxtqoKywgiY/7QHwZlfQkzpykAfy+NAlHkTP5hMg==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/shared-utils@2.0.8':
|
||||||
|
resolution: {integrity: sha512-ZEtoMPXS+IjT8GvpJTS9IWDnT1JNCKV+NDqqgysAf1niJmOFLyJgl6dh/9n4ufcGf1GbSEQN+VhJasEw7ajYGQ==}
|
||||||
|
|
||||||
|
'@nextui-org/skeleton@2.0.32':
|
||||||
|
resolution: {integrity: sha512-dS0vuRrc4oWktW3wa/KFhcBNnV0oiDqKXP4BqRj7wgS01fOAqj3cJiqwUDLKO8GbEnxLkbqLBFcUoLgktpRszQ==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/skeleton instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/slider@2.2.17':
|
||||||
|
resolution: {integrity: sha512-MgeJv3X+bT7Bw+LK1zba4vToOUzv8lCvDuGe0U5suJy1AKGN6uGDgSAxpIZhCYNWsuNRsopwdvsGtyeIjOEStA==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/slider instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/snippet@2.0.43':
|
||||||
|
resolution: {integrity: sha512-PLxc9ph9CLj52L26XSv4vBmQcSytCNc3ZBxkOTBEqmLSHCWwGQExrqKPnVZTE1etr6dcULiy5vNIpD8R7taO8A==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/snippet instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
framer-motion: '>=10.17.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/spacer@2.0.33':
|
||||||
|
resolution: {integrity: sha512-0YDtovMWuAVgBvVXUmplzohObGxMPFhisHXn6v+0nflAE9LiVeiXf121WVOEMrd08S7xvmrAANcMwo4TsYi49g==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/spacer instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/spinner@2.0.34':
|
||||||
|
resolution: {integrity: sha512-YKw/6xSLhsXU1k22OvYKyWhtJCHzW2bRAiieVSVG5xak3gYwknTds5H9s5uur+oAZVK9AkyAObD19QuZND32Jg==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/spinner instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/switch@2.0.34':
|
||||||
|
resolution: {integrity: sha512-SczQiHswo8eR94ecDgcULIsSIPfYVncqfKllcHEGqAs9BDpZun44KK0/R0xhWuPpx5oqB60VeSABN7JtEAxF+Q==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/switch instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/system-rsc@2.1.6':
|
||||||
|
resolution: {integrity: sha512-Wl2QwEFjYwuvw26R1RH3ZY81PD8YmfgtIjFvJZRP2VEIT6rPvlQ4ojgqdrkVkQZQ0L/K+5ZLbTKgLEFkj5ysdQ==}
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/system@2.2.6':
|
||||||
|
resolution: {integrity: sha512-tjIkOI0w32g68CGWleuSyIbEz8XBbeoNogR2lu7MWk3QovHCqgr4VVrP1cwMRYnwDPFQP3OpmH+NR9yzt+pIfg==}
|
||||||
|
peerDependencies:
|
||||||
|
framer-motion: '>=10.17.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/table@2.0.40':
|
||||||
|
resolution: {integrity: sha512-qDbSsu6mpWnr1Mt3DYTBzTFtN8Z5Gv7GDqECGcDVradkDVuJFZvkB9Ke392LcVZoXSk99Rpamq4WSWkEewBhWg==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/table instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/tabs@2.0.37':
|
||||||
|
resolution: {integrity: sha512-IQicuDggxTL+JeW3fRoZR4Rr24EwinxAdfU1jqcvT6gZywumndV27+I00kARz8P03kobYoY9t73NY92qo8T5gg==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/tabs instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
framer-motion: '>=10.17.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/theme@2.2.11':
|
||||||
|
resolution: {integrity: sha512-bg9+KNnFxcP3w/ugivEJtvQibODbTxfl6UdVvx7TCY8Rd269U7F2+nhnw1Qd1xJT5yZQnX6m//9wOoGtJV+6Kg==}
|
||||||
|
peerDependencies:
|
||||||
|
tailwindcss: '>=3.4.0'
|
||||||
|
|
||||||
|
'@nextui-org/tooltip@2.0.41':
|
||||||
|
resolution: {integrity: sha512-1c+vkCCszKcKl15HywlZ7UOL7c1UFgLudqBB/dEdWZiclT01BRiracMbcQ7McKHQCRl77Aa7LFv5x4wHOicWHQ==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/tooltip instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
framer-motion: '>=10.17.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/use-aria-accordion@2.0.7':
|
||||||
|
resolution: {integrity: sha512-VzGlxmsu2tWG2Pht1e0PBz40jz95v0OEKYVXq91WpDMwj8Bl1CYvxrw2Qz41/5Xi0X843Mmo4sPwrc/hk0+RHA==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/use-aria-button@2.0.10':
|
||||||
|
resolution: {integrity: sha512-tUpp4QMr1zugKPevyToeRHIufTuc/g+67/r/oQLRTG0mMo3yGVmggykQuYn22fqqZPpW6nHcB9VYc+XtZZ27TQ==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/use-aria-link@2.0.19':
|
||||||
|
resolution: {integrity: sha512-ef61cJLlwcR4zBWiaeHZy4K18juFjUup2SslfLIAiZz3kVosBCGKmkJkw1SASYY8+D/oUc2B6BFIk25YEsRKRw==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/use-aria-menu@2.0.7':
|
||||||
|
resolution: {integrity: sha512-5U91zFiWTLXsOhE0W3CThsD5TmL3ANeTEtoimtPgSLWV9keZBD9Ja62WsnPZPPAWhmv7jtL0/qk4d/YOra7PVA==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/use-aria-modal-overlay@2.0.13':
|
||||||
|
resolution: {integrity: sha512-ifQxJwTX72lhVUofEVQqMbpe9vEUiCIqiimzlUjeVuE0cYOXaoJLEgPozHpYQrdjTNiwD5On0LLMRgz19XyAqw==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/use-aria-multiselect@2.2.5':
|
||||||
|
resolution: {integrity: sha512-Gxo2M0LdnFL4/WCi192ziFB8JmSZm6yZYT8RB021Z3iAPBu/Pp9GnWEPZu5g15mKnn3jW5Ecnfw03jTEAQBR+Q==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/use-aria-toggle-button@2.0.10':
|
||||||
|
resolution: {integrity: sha512-U5jOmEO+nMIgYvBF0+gJtdq8C6dynGMjzAboPG4FhuHOzDoNiC12G5FIbGnRe8K1hMsKVuaI72p9986NhfqNgw==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/use-callback-ref@2.0.6':
|
||||||
|
resolution: {integrity: sha512-2WcwWuK1L/wIpTbibnLrysmmkzWomvkVIcgWayB6n/w+bpPrPCG7Zyg2WHzmMmDhe6imV//KKBgNKRi8Xhu/VA==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/use-clipboard@2.0.7':
|
||||||
|
resolution: {integrity: sha512-Bn1fF/goMwOA5DQyw3A4ebfgozwR8U5k5TAZMPiy1RBWgTFw7+lB0GNbH+DOnUGY5Vyztyaw6gtUyc3tVzJxeg==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/use-data-scroll-overflow@2.1.7':
|
||||||
|
resolution: {integrity: sha512-MP4YLjBWyIt0KyWPndXyhnkKgOLqTZ2aPY82Czjqn+eZk/l8BNo0nfA+dZFfbfEuPJgqdt/JDkMOrS+uq0+vkQ==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/use-disclosure@2.0.10':
|
||||||
|
resolution: {integrity: sha512-s2I58d7x2f1JRriZnNm9ZoxrGmxF+DnC9BXM1sD99Wq1VNMd0dhitmx0mUWfUB7l5HLyZgKOeiSLG+ugy1F1Yw==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/use-image@2.0.6':
|
||||||
|
resolution: {integrity: sha512-VelN9y3vzwIpPfubFMh00YRQ0f4+I5FElcAvAqoo0Kfb0K7sGrTo1lZNApHm6yBN2gJMMeccG9u7bZB+wcDGZQ==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/use-is-mobile@2.0.9':
|
||||||
|
resolution: {integrity: sha512-u5pRmPV0wacdpOcAkQnWwE30yNBl2uk1WvbWkrSELxIVRN22+fTIYn8ynnHK0JbJFTA6/5zh7uIfETQu3L6KjA==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/use-is-mounted@2.0.6':
|
||||||
|
resolution: {integrity: sha512-/lcMdYnwBZ1EuKMLRIhHeAZG8stXWNTz7wBweAlLId23VC4VHgCp/s9K9Vbj1A5/r8FiFQeoTmXQuMAMUoPRtg==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/use-measure@2.0.2':
|
||||||
|
resolution: {integrity: sha512-H/RSPPA9B5sZ10wiXR3jLlYFEuiVnc0O/sgLLQfrb5M0hvHoaqMThnsZpm//5iyS7tD7kxPeYNLa1EhzlQKxDA==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/use-pagination@2.0.10':
|
||||||
|
resolution: {integrity: sha512-PD6M8QKngUnTJfyoGiZrnrfUtA1A9ZVUjmbONO/1kxPuUegv0ZOQeFECPP2h7SFPxsyOceL1T97rg/2YPS247g==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/use-safe-layout-effect@2.0.6':
|
||||||
|
resolution: {integrity: sha512-xzEJXf/g9GaSqjLpQ4+Z2/pw1GPq2Fc5cWRGqEXbGauEMXuH8UboRls1BmIV1RuOpqI6FgxkEmxL1EuVIRVmvQ==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/use-scroll-position@2.0.9':
|
||||||
|
resolution: {integrity: sha512-tXbpb2bkKIjOp2I1uZ1T4T9Lxp0+Ta/TKu+5qvqsXkHRPbcoukdsquagYUDWK/fcumg72UPR8QP+na8KMn2gCg==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/use-update-effect@2.0.6':
|
||||||
|
resolution: {integrity: sha512-n5Qiv3ferKn+cSxU3Vv+96LdG8I/00mzc7Veoan+P9GL0aCTrsPB6RslTsiblaiAXQcqTiFXd8xwsK309DXOXA==}
|
||||||
|
peerDependencies:
|
||||||
|
react: '>=18'
|
||||||
|
|
||||||
|
'@nextui-org/user@2.0.34':
|
||||||
|
resolution: {integrity: sha512-7MN/xBaMhDJ0b+hB2YpGIm2DsC9CTpN1ab+EKwhUuWn26SgXw2FNu8CSHViyDEkvOP7sYKdHLp9UtSo/f3JnsQ==}
|
||||||
|
deprecated: This package has been deprecated. Please use @heroui/user instead.
|
||||||
|
peerDependencies:
|
||||||
|
'@nextui-org/system': '>=2.0.0'
|
||||||
|
'@nextui-org/theme': '>=2.1.0'
|
||||||
|
react: '>=18'
|
||||||
|
react-dom: '>=18'
|
||||||
|
|
||||||
'@nodelib/fs.scandir@2.1.5':
|
'@nodelib/fs.scandir@2.1.5':
|
||||||
resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
|
resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
|
||||||
engines: {node: '>= 8'}
|
engines: {node: '>= 8'}
|
||||||
|
|
@ -5204,8 +5727,8 @@ packages:
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
vite: ^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0
|
vite: ^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0
|
||||||
|
|
||||||
vite@5.4.11:
|
vite@5.4.14:
|
||||||
resolution: {integrity: sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==}
|
resolution: {integrity: sha512-EK5cY7Q1D8JNhSaPKVK4pwBFvaTmZxEnoKXLG/U9gmdDcihQGNzFlgIvaxezFR4glP1LsuiedwMBqCXH3wZccA==}
|
||||||
engines: {node: ^18.0.0 || >=20.0.0}
|
engines: {node: ^18.0.0 || >=20.0.0}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
|
|
@ -5456,11 +5979,11 @@ snapshots:
|
||||||
dependencies:
|
dependencies:
|
||||||
prismjs: 1.29.0
|
prismjs: 1.29.0
|
||||||
|
|
||||||
'@astrojs/react@3.6.2(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(vite@5.4.11(@types/node@20.14.9))':
|
'@astrojs/react@3.6.2(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(vite@5.4.14(@types/node@20.14.9))':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/react': 18.3.10
|
'@types/react': 18.3.10
|
||||||
'@types/react-dom': 18.3.0
|
'@types/react-dom': 18.3.0
|
||||||
'@vitejs/plugin-react': 4.3.1(vite@5.4.11(@types/node@20.14.9))
|
'@vitejs/plugin-react': 4.3.1(vite@5.4.14(@types/node@20.14.9))
|
||||||
react: 18.3.1
|
react: 18.3.1
|
||||||
react-dom: 18.3.1(react@18.3.1)
|
react-dom: 18.3.1(react@18.3.1)
|
||||||
ultrahtml: 1.5.3
|
ultrahtml: 1.5.3
|
||||||
|
|
@ -5495,13 +6018,13 @@ snapshots:
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
'@astrojs/vue@4.5.1(astro@4.16.18(@types/node@20.14.9)(rollup@4.22.5)(typescript@5.6.2))(rollup@4.22.5)(vite@5.4.11(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2))':
|
'@astrojs/vue@4.5.1(astro@4.16.18(@types/node@20.14.9)(rollup@4.22.5)(typescript@5.6.2))(rollup@4.22.5)(vite@5.4.14(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2))':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@vitejs/plugin-vue': 5.1.4(vite@5.4.11(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2))
|
'@vitejs/plugin-vue': 5.1.4(vite@5.4.14(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2))
|
||||||
'@vitejs/plugin-vue-jsx': 4.0.1(vite@5.4.11(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2))
|
'@vitejs/plugin-vue-jsx': 4.0.1(vite@5.4.14(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2))
|
||||||
'@vue/compiler-sfc': 3.5.10
|
'@vue/compiler-sfc': 3.5.10
|
||||||
astro: 4.16.18(@types/node@20.14.9)(rollup@4.22.5)(typescript@5.6.2)
|
astro: 4.16.18(@types/node@20.14.9)(rollup@4.22.5)(typescript@5.6.2)
|
||||||
vite-plugin-vue-devtools: 7.4.6(rollup@4.22.5)(vite@5.4.11(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2))
|
vite-plugin-vue-devtools: 7.4.6(rollup@4.22.5)(vite@5.4.14(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2))
|
||||||
vue: 3.5.10(typescript@5.6.2)
|
vue: 3.5.10(typescript@5.6.2)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- '@nuxt/kit'
|
- '@nuxt/kit'
|
||||||
|
|
@ -8808,30 +9331,30 @@ snapshots:
|
||||||
|
|
||||||
'@ungap/structured-clone@1.2.0': {}
|
'@ungap/structured-clone@1.2.0': {}
|
||||||
|
|
||||||
'@vitejs/plugin-react@4.3.1(vite@5.4.11(@types/node@20.14.9))':
|
'@vitejs/plugin-react@4.3.1(vite@5.4.14(@types/node@20.14.9))':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@babel/core': 7.25.8
|
'@babel/core': 7.25.8
|
||||||
'@babel/plugin-transform-react-jsx-self': 7.24.7(@babel/core@7.25.8)
|
'@babel/plugin-transform-react-jsx-self': 7.24.7(@babel/core@7.25.8)
|
||||||
'@babel/plugin-transform-react-jsx-source': 7.24.7(@babel/core@7.25.8)
|
'@babel/plugin-transform-react-jsx-source': 7.24.7(@babel/core@7.25.8)
|
||||||
'@types/babel__core': 7.20.5
|
'@types/babel__core': 7.20.5
|
||||||
react-refresh: 0.14.2
|
react-refresh: 0.14.2
|
||||||
vite: 5.4.11(@types/node@20.14.9)
|
vite: 5.4.14(@types/node@20.14.9)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
'@vitejs/plugin-vue-jsx@4.0.1(vite@5.4.11(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2))':
|
'@vitejs/plugin-vue-jsx@4.0.1(vite@5.4.14(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2))':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@babel/core': 7.25.8
|
'@babel/core': 7.25.8
|
||||||
'@babel/plugin-transform-typescript': 7.24.7(@babel/core@7.25.8)
|
'@babel/plugin-transform-typescript': 7.24.7(@babel/core@7.25.8)
|
||||||
'@vue/babel-plugin-jsx': 1.2.2(@babel/core@7.25.8)
|
'@vue/babel-plugin-jsx': 1.2.2(@babel/core@7.25.8)
|
||||||
vite: 5.4.11(@types/node@20.14.9)
|
vite: 5.4.14(@types/node@20.14.9)
|
||||||
vue: 3.5.10(typescript@5.6.2)
|
vue: 3.5.10(typescript@5.6.2)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
'@vitejs/plugin-vue@5.1.4(vite@5.4.11(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2))':
|
'@vitejs/plugin-vue@5.1.4(vite@5.4.14(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2))':
|
||||||
dependencies:
|
dependencies:
|
||||||
vite: 5.4.11(@types/node@20.14.9)
|
vite: 5.4.14(@types/node@20.14.9)
|
||||||
vue: 3.5.10(typescript@5.6.2)
|
vue: 3.5.10(typescript@5.6.2)
|
||||||
|
|
||||||
'@vue/babel-helper-vue-transform-on@1.2.2': {}
|
'@vue/babel-helper-vue-transform-on@1.2.2': {}
|
||||||
|
|
@ -8906,14 +9429,14 @@ snapshots:
|
||||||
'@vue/compiler-dom': 3.5.10
|
'@vue/compiler-dom': 3.5.10
|
||||||
'@vue/shared': 3.5.10
|
'@vue/shared': 3.5.10
|
||||||
|
|
||||||
'@vue/devtools-core@7.4.6(vite@5.4.11(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2))':
|
'@vue/devtools-core@7.4.6(vite@5.4.14(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2))':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@vue/devtools-kit': 7.4.6
|
'@vue/devtools-kit': 7.4.6
|
||||||
'@vue/devtools-shared': 7.4.6
|
'@vue/devtools-shared': 7.4.6
|
||||||
mitt: 3.0.1
|
mitt: 3.0.1
|
||||||
nanoid: 3.3.8
|
nanoid: 3.3.8
|
||||||
pathe: 1.1.2
|
pathe: 1.1.2
|
||||||
vite-hot-client: 0.2.3(vite@5.4.11(@types/node@20.14.9))
|
vite-hot-client: 0.2.3(vite@5.4.14(@types/node@20.14.9))
|
||||||
vue: 3.5.10(typescript@5.6.2)
|
vue: 3.5.10(typescript@5.6.2)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- vite
|
- vite
|
||||||
|
|
@ -9149,8 +9672,8 @@ snapshots:
|
||||||
tsconfck: 3.1.4(typescript@5.6.2)
|
tsconfck: 3.1.4(typescript@5.6.2)
|
||||||
unist-util-visit: 5.0.0
|
unist-util-visit: 5.0.0
|
||||||
vfile: 6.0.3
|
vfile: 6.0.3
|
||||||
vite: 5.4.11(@types/node@20.14.9)
|
vite: 5.4.14(@types/node@20.14.9)
|
||||||
vitefu: 1.0.4(vite@5.4.11(@types/node@20.14.9))
|
vitefu: 1.0.4(vite@5.4.14(@types/node@20.14.9))
|
||||||
which-pm: 3.0.0
|
which-pm: 3.0.0
|
||||||
xxhash-wasm: 1.1.0
|
xxhash-wasm: 1.1.0
|
||||||
yargs-parser: 21.1.1
|
yargs-parser: 21.1.1
|
||||||
|
|
@ -12090,11 +12613,11 @@ snapshots:
|
||||||
'@types/unist': 3.0.2
|
'@types/unist': 3.0.2
|
||||||
vfile-message: 4.0.2
|
vfile-message: 4.0.2
|
||||||
|
|
||||||
vite-hot-client@0.2.3(vite@5.4.11(@types/node@20.14.9)):
|
vite-hot-client@0.2.3(vite@5.4.14(@types/node@20.14.9)):
|
||||||
dependencies:
|
dependencies:
|
||||||
vite: 5.4.11(@types/node@20.14.9)
|
vite: 5.4.14(@types/node@20.14.9)
|
||||||
|
|
||||||
vite-plugin-inspect@0.8.7(rollup@4.22.5)(vite@5.4.11(@types/node@20.14.9)):
|
vite-plugin-inspect@0.8.7(rollup@4.22.5)(vite@5.4.14(@types/node@20.14.9)):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@antfu/utils': 0.7.10
|
'@antfu/utils': 0.7.10
|
||||||
'@rollup/pluginutils': 5.1.2(rollup@4.22.5)
|
'@rollup/pluginutils': 5.1.2(rollup@4.22.5)
|
||||||
|
|
@ -12105,28 +12628,28 @@ snapshots:
|
||||||
perfect-debounce: 1.0.0
|
perfect-debounce: 1.0.0
|
||||||
picocolors: 1.0.1
|
picocolors: 1.0.1
|
||||||
sirv: 2.0.4
|
sirv: 2.0.4
|
||||||
vite: 5.4.11(@types/node@20.14.9)
|
vite: 5.4.14(@types/node@20.14.9)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- rollup
|
- rollup
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
vite-plugin-vue-devtools@7.4.6(rollup@4.22.5)(vite@5.4.11(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2)):
|
vite-plugin-vue-devtools@7.4.6(rollup@4.22.5)(vite@5.4.14(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2)):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@vue/devtools-core': 7.4.6(vite@5.4.11(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2))
|
'@vue/devtools-core': 7.4.6(vite@5.4.14(@types/node@20.14.9))(vue@3.5.10(typescript@5.6.2))
|
||||||
'@vue/devtools-kit': 7.4.6
|
'@vue/devtools-kit': 7.4.6
|
||||||
'@vue/devtools-shared': 7.4.6
|
'@vue/devtools-shared': 7.4.6
|
||||||
execa: 8.0.1
|
execa: 8.0.1
|
||||||
sirv: 2.0.4
|
sirv: 2.0.4
|
||||||
vite: 5.4.11(@types/node@20.14.9)
|
vite: 5.4.14(@types/node@20.14.9)
|
||||||
vite-plugin-inspect: 0.8.7(rollup@4.22.5)(vite@5.4.11(@types/node@20.14.9))
|
vite-plugin-inspect: 0.8.7(rollup@4.22.5)(vite@5.4.14(@types/node@20.14.9))
|
||||||
vite-plugin-vue-inspector: 5.2.0(vite@5.4.11(@types/node@20.14.9))
|
vite-plugin-vue-inspector: 5.2.0(vite@5.4.14(@types/node@20.14.9))
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- '@nuxt/kit'
|
- '@nuxt/kit'
|
||||||
- rollup
|
- rollup
|
||||||
- supports-color
|
- supports-color
|
||||||
- vue
|
- vue
|
||||||
|
|
||||||
vite-plugin-vue-inspector@5.2.0(vite@5.4.11(@types/node@20.14.9)):
|
vite-plugin-vue-inspector@5.2.0(vite@5.4.14(@types/node@20.14.9)):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@babel/core': 7.25.8
|
'@babel/core': 7.25.8
|
||||||
'@babel/plugin-proposal-decorators': 7.24.7(@babel/core@7.25.8)
|
'@babel/plugin-proposal-decorators': 7.24.7(@babel/core@7.25.8)
|
||||||
|
|
@ -12137,11 +12660,11 @@ snapshots:
|
||||||
'@vue/compiler-dom': 3.4.31
|
'@vue/compiler-dom': 3.4.31
|
||||||
kolorist: 1.8.0
|
kolorist: 1.8.0
|
||||||
magic-string: 0.30.11
|
magic-string: 0.30.11
|
||||||
vite: 5.4.11(@types/node@20.14.9)
|
vite: 5.4.14(@types/node@20.14.9)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
vite@5.4.11(@types/node@20.14.9):
|
vite@5.4.14(@types/node@20.14.9):
|
||||||
dependencies:
|
dependencies:
|
||||||
esbuild: 0.21.5
|
esbuild: 0.21.5
|
||||||
postcss: 8.4.47
|
postcss: 8.4.47
|
||||||
|
|
@ -12150,9 +12673,9 @@ snapshots:
|
||||||
'@types/node': 20.14.9
|
'@types/node': 20.14.9
|
||||||
fsevents: 2.3.3
|
fsevents: 2.3.3
|
||||||
|
|
||||||
vitefu@1.0.4(vite@5.4.11(@types/node@20.14.9)):
|
vitefu@1.0.4(vite@5.4.14(@types/node@20.14.9)):
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
vite: 5.4.11(@types/node@20.14.9)
|
vite: 5.4.14(@types/node@20.14.9)
|
||||||
|
|
||||||
vscode-languageserver-textdocument@1.0.12: {}
|
vscode-languageserver-textdocument@1.0.12: {}
|
||||||
|
|
||||||
|
|
|
||||||
10
public/static/css/github-dark.min.css
vendored
10
public/static/css/github-dark.min.css
vendored
|
|
@ -1,10 +0,0 @@
|
||||||
pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
|
|
||||||
Theme: GitHub Dark
|
|
||||||
Description: Dark theme as seen on github.com
|
|
||||||
Author: github.com
|
|
||||||
Maintainer: @Hirse
|
|
||||||
Updated: 2021-05-15
|
|
||||||
|
|
||||||
Outdated base version: https://github.com/primer/github-syntax-dark
|
|
||||||
Current colors taken from GitHub's CSS
|
|
||||||
*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#79c0ff}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-code,.hljs-comment,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}
|
|
||||||
10
public/static/css/github.min.css
vendored
10
public/static/css/github.min.css
vendored
|
|
@ -1,10 +0,0 @@
|
||||||
pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
|
|
||||||
Theme: GitHub
|
|
||||||
Description: Light theme as seen on github.com
|
|
||||||
Author: github.com
|
|
||||||
Maintainer: @Hirse
|
|
||||||
Updated: 2021-05-15
|
|
||||||
|
|
||||||
Outdated base version: https://github.com/primer/github-syntax-light
|
|
||||||
Current colors taken from GitHub's CSS
|
|
||||||
*/.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#005cc5}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-code,.hljs-comment,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}
|
|
||||||
1
public/static/css/googlecode.min.css
vendored
1
public/static/css/googlecode.min.css
vendored
|
|
@ -1 +0,0 @@
|
||||||
pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#fff;color:#000}.hljs-comment,.hljs-quote{color:#800}.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-title{color:#008}.hljs-template-variable,.hljs-variable{color:#660}.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-string{color:#080}.hljs-bullet,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-symbol{color:#066}.hljs-attr,.hljs-built_in,.hljs-doctag,.hljs-params,.hljs-title,.hljs-type{color:#606}.hljs-attribute,.hljs-subst{color:#000}.hljs-formula{background-color:#eee;font-style:italic}.hljs-selector-class,.hljs-selector-id{color:#9b703f}.hljs-addition{background-color:#baeeba}.hljs-deletion{background-color:#ffc8bd}.hljs-doctag,.hljs-strong{font-weight:700}.hljs-emphasis{font-style:italic}
|
|
||||||
13
public/static/css/stackoverflow-dark.min.css
vendored
13
public/static/css/stackoverflow-dark.min.css
vendored
|
|
@ -1,13 +0,0 @@
|
||||||
pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
|
|
||||||
Theme: StackOverflow Dark
|
|
||||||
Description: Dark theme as used on stackoverflow.com
|
|
||||||
Author: stackoverflow.com
|
|
||||||
Maintainer: @Hirse
|
|
||||||
Website: https://github.com/StackExchange/Stacks
|
|
||||||
License: MIT
|
|
||||||
Updated: 2021-05-15
|
|
||||||
|
|
||||||
Updated for @stackoverflow/stacks v0.64.0
|
|
||||||
Code Blocks: /blob/v0.64.0/lib/css/components/_stacks-code-blocks.less
|
|
||||||
Colors: /blob/v0.64.0/lib/css/exports/_stacks-constants-colors.less
|
|
||||||
*/.hljs{color:#fff;background:#1c1b1b}.hljs-subst{color:#fff}.hljs-comment{color:#999}.hljs-attr,.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-section,.hljs-selector-tag{color:#88aece}.hljs-attribute{color:#c59bc1}.hljs-name,.hljs-number,.hljs-quote,.hljs-selector-id,.hljs-template-tag,.hljs-type{color:#f08d49}.hljs-selector-class{color:#88aece}.hljs-link,.hljs-regexp,.hljs-selector-attr,.hljs-string,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#b5bd68}.hljs-meta,.hljs-selector-pseudo{color:#88aece}.hljs-built_in,.hljs-literal,.hljs-title{color:#f08d49}.hljs-bullet,.hljs-code{color:#ccc}.hljs-meta .hljs-string{color:#b5bd68}.hljs-deletion{color:#de7176}.hljs-addition{color:#76c490}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}
|
|
||||||
13
public/static/css/stackoverflow-light.min.css
vendored
13
public/static/css/stackoverflow-light.min.css
vendored
|
|
@ -1,13 +0,0 @@
|
||||||
pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
|
|
||||||
Theme: StackOverflow Light
|
|
||||||
Description: Light theme as used on stackoverflow.com
|
|
||||||
Author: stackoverflow.com
|
|
||||||
Maintainer: @Hirse
|
|
||||||
Website: https://github.com/StackExchange/Stacks
|
|
||||||
License: MIT
|
|
||||||
Updated: 2021-05-15
|
|
||||||
|
|
||||||
Updated for @stackoverflow/stacks v0.64.0
|
|
||||||
Code Blocks: /blob/v0.64.0/lib/css/components/_stacks-code-blocks.less
|
|
||||||
Colors: /blob/v0.64.0/lib/css/exports/_stacks-constants-colors.less
|
|
||||||
*/.hljs{color:#2f3337;background:#f6f6f6}.hljs-subst{color:#2f3337}.hljs-comment{color:#656e77}.hljs-attr,.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-section,.hljs-selector-tag{color:#015692}.hljs-attribute{color:#803378}.hljs-name,.hljs-number,.hljs-quote,.hljs-selector-id,.hljs-template-tag,.hljs-type{color:#b75501}.hljs-selector-class{color:#015692}.hljs-link,.hljs-regexp,.hljs-selector-attr,.hljs-string,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#54790d}.hljs-meta,.hljs-selector-pseudo{color:#015692}.hljs-built_in,.hljs-literal,.hljs-title{color:#b75501}.hljs-bullet,.hljs-code{color:#535a60}.hljs-meta .hljs-string{color:#54790d}.hljs-deletion{color:#c02d2e}.hljs-addition{color:#2f6f44}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}
|
|
||||||
1
public/static/css/vs2015.min.css
vendored
1
public/static/css/vs2015.min.css
vendored
|
|
@ -1 +0,0 @@
|
||||||
pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#1e1e1e;color:#dcdcdc}.hljs-keyword,.hljs-literal,.hljs-name,.hljs-symbol{color:#569cd6}.hljs-link{color:#569cd6;text-decoration:underline}.hljs-built_in,.hljs-type{color:#4ec9b0}.hljs-class,.hljs-number{color:#b8d7a3}.hljs-meta .hljs-string,.hljs-string{color:#d69d85}.hljs-regexp,.hljs-template-tag{color:#9a5334}.hljs-formula,.hljs-function,.hljs-params,.hljs-subst,.hljs-title{color:#dcdcdc}.hljs-comment,.hljs-quote{color:#57a64a;font-style:italic}.hljs-doctag{color:#608b4e}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-tag{color:#9b9b9b}.hljs-template-variable,.hljs-variable{color:#bd63c5}.hljs-attr,.hljs-attribute{color:#9cdcfe}.hljs-section{color:gold}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-bullet,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-selector-pseudo,.hljs-selector-tag{color:#d7ba7d}.hljs-addition{background-color:#144212;display:inline-block;width:100%}.hljs-deletion{background-color:#600;display:inline-block;width:100%}
|
|
||||||
File diff suppressed because one or more lines are too long
|
|
@ -5,9 +5,7 @@ document.head.appendChild(scriptMd5)
|
||||||
|
|
||||||
scriptMd5.onload = function () {
|
scriptMd5.onload = function () {
|
||||||
console.log("md5.js loaded")
|
console.log("md5.js loaded")
|
||||||
// step1. sythx highlighting
|
// step1. lazyload
|
||||||
syntaxHighlight()
|
|
||||||
// step2. lazyload
|
|
||||||
initLazyLoad()
|
initLazyLoad()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -81,31 +79,3 @@ function renderStyle(sign, percent) {
|
||||||
}
|
}
|
||||||
};`
|
};`
|
||||||
}
|
}
|
||||||
|
|
||||||
function syntaxHighlight() {
|
|
||||||
var script = document.createElement("script")
|
|
||||||
script.src = "/static/js/hljs.js"
|
|
||||||
document.head.appendChild(script)
|
|
||||||
|
|
||||||
var styleLight = document.createElement("link")
|
|
||||||
styleLight.rel = "stylesheet"
|
|
||||||
styleLight.href = "/static/css/stackoverflow-light.min.css"
|
|
||||||
|
|
||||||
var styleDark = document.createElement("link")
|
|
||||||
styleDark.rel = "stylesheet"
|
|
||||||
styleDark.href = "/static/css/stackoverflow-dark.min.css"
|
|
||||||
|
|
||||||
if (document.querySelector("body").classList.contains("theme-dark")) {
|
|
||||||
document.head.appendChild(styleDark)
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
document.head.appendChild(styleLight)
|
|
||||||
}
|
|
||||||
|
|
||||||
script.onload = function () {
|
|
||||||
console.log("hljs.js loaded")
|
|
||||||
document.querySelectorAll("pre code").forEach(function (block) {
|
|
||||||
hljs.highlightBlock(block)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
import { useState } from "react"
|
import { useState } from "react"
|
||||||
import { Navbar, NavbarBrand, NavbarContent, NavbarItem, NavbarMenuToggle, NavbarMenu, NavbarMenuItem, Link } from "@heroui/react"
|
import { Navbar, NavbarBrand, NavbarContent, NavbarItem, NavbarMenuToggle, NavbarMenu, NavbarMenuItem, Link } from "@heroui/react"
|
||||||
import { SITE_TITLE } from "../../consts"
|
import { SITE_TITLE } from "../../consts"
|
||||||
|
import CALogoWhite from "./assets/CA-logo-white.png"
|
||||||
|
|
||||||
export default function App() {
|
export default function App() {
|
||||||
const [isMenuOpen, setIsMenuOpen] = useState(false)
|
const [isMenuOpen, setIsMenuOpen] = useState(false)
|
||||||
|
|
@ -31,10 +32,16 @@ export default function App() {
|
||||||
<img
|
<img
|
||||||
src="https://oss.nbtca.space/CA-logo.svg"
|
src="https://oss.nbtca.space/CA-logo.svg"
|
||||||
alt=""
|
alt=""
|
||||||
className="w-8 aspect-square cursor-pointer"
|
className="w-8 aspect-square cursor-pointer dark:hidden"
|
||||||
onClick={() => window.location.href = "/"}
|
onClick={() => window.location.href = "/"}
|
||||||
/>
|
/>
|
||||||
<span className="hidden sm:flex select-none cursor-default text-lg text-[#1d1d1f]">
|
<img
|
||||||
|
src={CALogoWhite.src}
|
||||||
|
alt=""
|
||||||
|
className="w-8 aspect-square cursor-pointer hidden dark:block"
|
||||||
|
onClick={() => window.location.href = "/"}
|
||||||
|
/>
|
||||||
|
<span className="hidden sm:flex select-none cursor-default text-lg text-[#1d1d1f] dark:text-white">
|
||||||
{SITE_TITLE}
|
{SITE_TITLE}
|
||||||
</span>
|
</span>
|
||||||
</NavbarBrand>
|
</NavbarBrand>
|
||||||
|
|
|
||||||
BIN
src/components/header/assets/CA-logo-white.png
Normal file
BIN
src/components/header/assets/CA-logo-white.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 575 KiB |
|
|
@ -5,7 +5,7 @@ pubDate: 2024-10-13
|
||||||
description: ' '
|
description: ' '
|
||||||
author: 'zzh0u'
|
author: 'zzh0u'
|
||||||
tags: ["技术","开发","Git"]
|
tags: ["技术","开发","Git"]
|
||||||
theme: 'white'
|
theme: 'dark'
|
||||||
featured: true
|
featured: true
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
|
||||||
33
src/plugins/cover.ts
Normal file
33
src/plugins/cover.ts
Normal file
|
|
@ -0,0 +1,33 @@
|
||||||
|
import path from "path"
|
||||||
|
import { type RehypePlugin } from "@astrojs/markdown-remark"
|
||||||
|
import { convertImageToBase64URL } from "../utils/image"
|
||||||
|
|
||||||
|
export const handleLocalCoverPlugin: RehypePlugin = () => {
|
||||||
|
return async (tree, file) => {
|
||||||
|
const filePath = file.history[0]
|
||||||
|
type AstroData = {
|
||||||
|
frontmatter: {
|
||||||
|
cover: { url: string } | string | undefined
|
||||||
|
}
|
||||||
|
}
|
||||||
|
const astroData = file.data.astro as AstroData
|
||||||
|
if (!astroData.frontmatter.cover) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
const coverUrl = typeof astroData.frontmatter.cover === "string" ? astroData.frontmatter.cover : astroData.frontmatter.cover.url
|
||||||
|
if (coverUrl.includes("http")) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (coverUrl.includes("base64")) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
const url = path.resolve(path.dirname(filePath), coverUrl)
|
||||||
|
const dataURL = await convertImageToBase64URL(url)
|
||||||
|
if (typeof astroData.frontmatter.cover === "string") {
|
||||||
|
astroData.frontmatter.cover = dataURL
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
astroData.frontmatter.cover.url = dataURL
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
185
src/plugins/theme.ts
Normal file
185
src/plugins/theme.ts
Normal file
|
|
@ -0,0 +1,185 @@
|
||||||
|
import { type RehypePlugin } from "@astrojs/markdown-remark"
|
||||||
|
import type { RehypePlugins } from "astro"
|
||||||
|
import { visit } from "unist-util-visit"
|
||||||
|
import md5 from "md5"
|
||||||
|
|
||||||
|
export const addSeparator: RehypePlugin = () =>
|
||||||
|
(tree) => {
|
||||||
|
const len = tree.children.length
|
||||||
|
for (let index = 0; index < len; index++) {
|
||||||
|
const node = tree.children[index]
|
||||||
|
if (node.type === "element" && node.tagName === "figure") {
|
||||||
|
tree.children.splice(index, 0, {
|
||||||
|
type: "element",
|
||||||
|
tagName: "div",
|
||||||
|
properties: {
|
||||||
|
className: ["tertiary-nav component"],
|
||||||
|
},
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
type: "element",
|
||||||
|
tagName: "div",
|
||||||
|
properties: {
|
||||||
|
className: ["component-content"],
|
||||||
|
},
|
||||||
|
children: [],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
})
|
||||||
|
index++
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
const image: RehypePlugin = () => (tree) => {
|
||||||
|
visit(tree, "element", (node) => {
|
||||||
|
if (node.tagName === "p" && node.children[0].tagName === "img") {
|
||||||
|
node.tagName = "figure"
|
||||||
|
const img = node.children[0]
|
||||||
|
const sign = md5(img.properties.src)
|
||||||
|
const data = img.properties.alt.split("|")
|
||||||
|
const alt = data[0]
|
||||||
|
let size = "big"
|
||||||
|
if (data.length > 1) {
|
||||||
|
size = data[1]
|
||||||
|
}
|
||||||
|
const classes = ["image component image-full-bleed body-copy-wide nr-scroll-animation nr-scroll-animation--on"]
|
||||||
|
classes.push(`image-${size}`)
|
||||||
|
node.properties.className = classes
|
||||||
|
node.children = [
|
||||||
|
{
|
||||||
|
type: "element",
|
||||||
|
tagName: "div",
|
||||||
|
properties: {
|
||||||
|
className: ["component-content"],
|
||||||
|
},
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
type: "element",
|
||||||
|
tagName: "div",
|
||||||
|
properties: {
|
||||||
|
className: ["image-share-sheet"],
|
||||||
|
},
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
type: "element",
|
||||||
|
tagName: "div",
|
||||||
|
properties: {
|
||||||
|
className: [`image image-loaded image-asset image-${sign}`],
|
||||||
|
id: `lht${sign}`,
|
||||||
|
},
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
type: "element",
|
||||||
|
tagName: "picture",
|
||||||
|
properties: {
|
||||||
|
className: ["picture"],
|
||||||
|
},
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
type: "element",
|
||||||
|
tagName: "img",
|
||||||
|
properties: {
|
||||||
|
src: img.properties.src,
|
||||||
|
alt: alt,
|
||||||
|
className: ["picture-image"],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: "element",
|
||||||
|
tagName: "div",
|
||||||
|
properties: {
|
||||||
|
className: ["image-description"],
|
||||||
|
},
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
type: "element",
|
||||||
|
tagName: "div",
|
||||||
|
properties: {
|
||||||
|
className: ["image-caption"],
|
||||||
|
},
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
type: "text",
|
||||||
|
value: alt,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
]
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
const code: RehypePlugin = () => (tree) => {
|
||||||
|
tree.children.forEach((node) => {
|
||||||
|
if (node.type === "raw") {
|
||||||
|
node.value = `<div class="page-body code component"><div class="component-content code"> ${node.value} </div></div>`
|
||||||
|
// node.value = node.value.replace(/astro-code/g, 'astro-code')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
const body: RehypePlugin = () => (tree) => {
|
||||||
|
for (let i = 0; i < tree.children.length; i++) {
|
||||||
|
const node = tree.children[i]
|
||||||
|
if (node.type === "element" && ["p", "h1", "h2", "h3", "h4", "h5", "h6", "table"].includes(node.tagName)) {
|
||||||
|
let next = tree.children[i + 1]
|
||||||
|
const nodes = [node]
|
||||||
|
while (next && !["figure"].includes(next.tagName) && next.type != "raw") {
|
||||||
|
nodes.push(next)
|
||||||
|
next = tree.children[tree.children.indexOf(next) + 1]
|
||||||
|
}
|
||||||
|
if (nodes.length > 1) {
|
||||||
|
// rename label
|
||||||
|
nodes.forEach((node) => {
|
||||||
|
if (node.tagName === "p") {
|
||||||
|
node.properties.className = ["page-body-copy"]
|
||||||
|
node.tagName = "div"
|
||||||
|
}
|
||||||
|
if (node.tagName === "pre") {
|
||||||
|
const originalClassName = node.properties.className
|
||||||
|
node.properties.className = originalClassName instanceof Array
|
||||||
|
? [...originalClassName, "page-body-copy"]
|
||||||
|
: ["page-body-copy"]
|
||||||
|
}
|
||||||
|
if (["h1", "h2", "h3", "h4", "h5", "h6"].includes(node.tagName)) {
|
||||||
|
node.properties.className = ["page-body-header"]
|
||||||
|
}
|
||||||
|
})
|
||||||
|
tree.children.splice(i, nodes.length, {
|
||||||
|
type: "element",
|
||||||
|
tagName: "div",
|
||||||
|
properties: {
|
||||||
|
className: ["page-body text component"],
|
||||||
|
},
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
type: "element",
|
||||||
|
tagName: "div",
|
||||||
|
properties: {
|
||||||
|
className: ["component-content"],
|
||||||
|
},
|
||||||
|
children: nodes,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export const themePipeline: RehypePlugins = [
|
||||||
|
addSeparator,
|
||||||
|
image,
|
||||||
|
code,
|
||||||
|
body,
|
||||||
|
]
|
||||||
|
|
@ -12,6 +12,7 @@
|
||||||
--footer-pipe-color: #86868b;
|
--footer-pipe-color: #86868b;
|
||||||
--footer-directory-title-color: #1d1d1f;
|
--footer-directory-title-color: #1d1d1f;
|
||||||
--footer-directory-title-color-hover: #000;
|
--footer-directory-title-color-hover: #000;
|
||||||
|
--borer-radius: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
*,
|
*,
|
||||||
|
|
@ -30,6 +31,28 @@ body {
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
body, input, textarea, select, button {
|
||||||
|
font-synthesis: none;
|
||||||
|
-moz-font-feature-settings: "kern";
|
||||||
|
-webkit-font-smoothing: antialiased;
|
||||||
|
-moz-osx-font-smoothing:grayscale
|
||||||
|
}
|
||||||
|
|
||||||
|
body.theme-dark .astro-code,
|
||||||
|
body.theme-dark .astro-code span {
|
||||||
|
color: var(--shiki-dark) !important;
|
||||||
|
background-color: var(--shiki-dark-bg) !important;
|
||||||
|
/* Optional, if you also want font styles */
|
||||||
|
font-style: var(--shiki-dark-font-style) !important;
|
||||||
|
font-weight: var(--shiki-dark-font-weight) !important;
|
||||||
|
text-decoration: var(--shiki-dark-text-decoration) !important;
|
||||||
|
}
|
||||||
|
.astro-code{
|
||||||
|
padding: 12px;
|
||||||
|
border-radius: var(--borer-radius);
|
||||||
|
background-color: var(--gray-primary) !important;
|
||||||
|
}
|
||||||
|
|
||||||
ul,
|
ul,
|
||||||
ol,
|
ol,
|
||||||
li,
|
li,
|
||||||
|
|
@ -124,7 +147,7 @@ button:disabled {
|
||||||
}
|
}
|
||||||
|
|
||||||
html {
|
html {
|
||||||
font-family: "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
||||||
"Arial", sans-serif;
|
"Arial", sans-serif;
|
||||||
font-size: 106.25%;
|
font-size: 106.25%;
|
||||||
quotes: "“" "”";
|
quotes: "“" "”";
|
||||||
|
|
@ -135,7 +158,7 @@ body {
|
||||||
line-height: 1.47059;
|
line-height: 1.47059;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
letter-spacing: -0.022em;
|
letter-spacing: -0.022em;
|
||||||
font-family: "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
||||||
"Arial", sans-serif;
|
"Arial", sans-serif;
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
color: #1d1d1f;
|
color: #1d1d1f;
|
||||||
|
|
@ -488,7 +511,7 @@ html.no-touch.no-reduced-motion .tile[data-focus-method="key"] .media--video {
|
||||||
line-height: 1.33337;
|
line-height: 1.33337;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
letter-spacing: -0.01em;
|
letter-spacing: -0.01em;
|
||||||
font-family: "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
||||||
"Arial", sans-serif;
|
"Arial", sans-serif;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -527,7 +550,7 @@ html.no-touch.no-reduced-motion .tile[data-focus-method="key"] .media--video {
|
||||||
}
|
}
|
||||||
|
|
||||||
.tile__category:lang(zh-CN) {
|
.tile__category:lang(zh-CN) {
|
||||||
font-family: "SF Pro SC", "SF Pro Text", "SF Pro Icons", "PingFang SC",
|
font-family: system-ui, "SF Pro SC", "SF Pro Text", "SF Pro Icons", "PingFang SC",
|
||||||
"Helvetica Neue", "Helvetica", "Arial", sans-serif;
|
"Helvetica Neue", "Helvetica", "Arial", sans-serif;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -551,7 +574,7 @@ html.no-touch.no-reduced-motion .tile[data-focus-method="key"] .media--video {
|
||||||
line-height: 1.28577;
|
line-height: 1.28577;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
letter-spacing: -0.016em;
|
letter-spacing: -0.016em;
|
||||||
font-family: "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
||||||
"Arial", sans-serif;
|
"Arial", sans-serif;
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: flex-start;
|
justify-content: flex-start;
|
||||||
|
|
@ -592,7 +615,7 @@ html.no-touch.no-reduced-motion .tile[data-focus-method="key"] .media--video {
|
||||||
}
|
}
|
||||||
|
|
||||||
.tile__timestamp:lang(zh-CN) {
|
.tile__timestamp:lang(zh-CN) {
|
||||||
font-family: "SF Pro SC", "SF Pro Text", "SF Pro Icons", "PingFang SC",
|
font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI' , "SF Pro SC", "SF Pro Text", "SF Pro Icons", "PingFang SC",
|
||||||
"Helvetica Neue", "Helvetica", "Arial", sans-serif;
|
"Helvetica Neue", "Helvetica", "Arial", sans-serif;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -5408,7 +5431,7 @@ html.no-touch.no-reduced-motion
|
||||||
line-height: 1.23536;
|
line-height: 1.23536;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
letter-spacing: -0.022em;
|
letter-spacing: -0.022em;
|
||||||
font-family: "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
||||||
"Arial", sans-serif;
|
"Arial", sans-serif;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
@ -5436,7 +5459,7 @@ html.no-touch.no-reduced-motion
|
||||||
line-height: 1.23536;
|
line-height: 1.23536;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
letter-spacing: -0.022em;
|
letter-spacing: -0.022em;
|
||||||
font-family: "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
||||||
"Arial", sans-serif;
|
"Arial", sans-serif;
|
||||||
border: 2px solid;
|
border: 2px solid;
|
||||||
padding: 10px 24px 9px;
|
padding: 10px 24px 9px;
|
||||||
|
|
@ -5470,7 +5493,7 @@ html.no-touch.no-reduced-motion
|
||||||
line-height: 1.23536;
|
line-height: 1.23536;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
letter-spacing: -0.022em;
|
letter-spacing: -0.022em;
|
||||||
font-family: "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
||||||
"Arial", sans-serif;
|
"Arial", sans-serif;
|
||||||
-webkit-line-clamp: 6;
|
-webkit-line-clamp: 6;
|
||||||
-webkit-box-orient: vertical;
|
-webkit-box-orient: vertical;
|
||||||
|
|
@ -5939,49 +5962,8 @@ html.no-touch.no-reduced-motion
|
||||||
"Arial", sans-serif;
|
"Arial", sans-serif;
|
||||||
}
|
}
|
||||||
|
|
||||||
.page-body:lang(ar) {
|
|
||||||
line-height: 1.57895;
|
|
||||||
font-family: "SF Pro AR", "SF Pro Gulf", "SF Pro Display", "SF Pro Icons",
|
|
||||||
"Helvetica Neue", "Helvetica", "Arial", sans-serif;
|
|
||||||
}
|
|
||||||
|
|
||||||
.page-body:lang(ja) {
|
|
||||||
line-height: 1.47376;
|
|
||||||
font-family: "SF Pro JP", "SF Pro Display", "SF Pro Icons",
|
|
||||||
"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo",
|
|
||||||
"MS Pゴシック", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
|
|
||||||
}
|
|
||||||
|
|
||||||
.page-body:lang(ko) {
|
|
||||||
line-height: 1.52632;
|
|
||||||
font-family: "SF Pro KR", "SF Pro Display", "SF Pro Icons", "Apple Gothic",
|
|
||||||
"HY Gulim", "MalgunGothic", "HY Dotum", "Lexi Gulim", "Helvetica Neue",
|
|
||||||
"Helvetica", "Arial", sans-serif;
|
|
||||||
}
|
|
||||||
|
|
||||||
.page-body:lang(th) {
|
|
||||||
line-height: 1.36844;
|
|
||||||
font-family: "SF Pro TH", "SF Pro Display", "SF Pro Icons", "Helvetica Neue",
|
|
||||||
"Helvetica", "Arial", sans-serif;
|
|
||||||
}
|
|
||||||
|
|
||||||
.page-body:lang(zh-CN) {
|
.page-body:lang(zh-CN) {
|
||||||
font-family: "SF Pro SC", "SF Pro Display", "SF Pro Icons", "PingFang SC",
|
font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI' , "SF Pro SC", "SF Pro Text", "SF Pro Icons", "PingFang SC",
|
||||||
"Helvetica Neue", "Helvetica", "Arial", sans-serif;
|
|
||||||
}
|
|
||||||
|
|
||||||
.page-body:lang(zh-HK) {
|
|
||||||
font-family: "SF Pro HK", "SF Pro Display", "SF Pro Icons", "PingFang HK",
|
|
||||||
"Helvetica Neue", "Helvetica", "Arial", sans-serif;
|
|
||||||
}
|
|
||||||
|
|
||||||
.page-body:lang(zh-MO) {
|
|
||||||
font-family: "SF Pro HK", "SF Pro TC", "SF Pro Display", "SF Pro Icons",
|
|
||||||
"PingFang HK", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
|
|
||||||
}
|
|
||||||
|
|
||||||
.page-body:lang(zh-TW) {
|
|
||||||
font-family: "SF Pro TC", "SF Pro Display", "SF Pro Icons", "PingFang TC",
|
|
||||||
"Helvetica Neue", "Helvetica", "Arial", sans-serif;
|
"Helvetica Neue", "Helvetica", "Arial", sans-serif;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -5991,62 +5973,13 @@ html.no-touch.no-reduced-motion
|
||||||
line-height: 1.47059;
|
line-height: 1.47059;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
letter-spacing: -0.022em;
|
letter-spacing: -0.022em;
|
||||||
font-family: "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
||||||
"Arial", sans-serif;
|
"Arial", sans-serif;
|
||||||
}
|
}
|
||||||
|
|
||||||
.page-body:lang(ar) {
|
|
||||||
line-height: 1.58824;
|
|
||||||
letter-spacing: 0em;
|
|
||||||
font-family: "SF Pro AR", "SF Pro Gulf", "SF Pro Text", "SF Pro Icons",
|
|
||||||
"Helvetica Neue", "Helvetica", "Arial", sans-serif;
|
|
||||||
}
|
|
||||||
|
|
||||||
.page-body:lang(ja) {
|
|
||||||
letter-spacing: 0em;
|
|
||||||
font-family: "SF Pro JP", "SF Pro Text", "SF Pro Icons",
|
|
||||||
"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo",
|
|
||||||
"MS Pゴシック", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
|
|
||||||
}
|
|
||||||
|
|
||||||
.page-body:lang(ko) {
|
|
||||||
line-height: 1.58824;
|
|
||||||
letter-spacing: 0em;
|
|
||||||
font-family: "SF Pro KR", "SF Pro Text", "SF Pro Icons", "Apple Gothic",
|
|
||||||
"HY Gulim", "MalgunGothic", "HY Dotum", "Lexi Gulim", "Helvetica Neue",
|
|
||||||
"Helvetica", "Arial", sans-serif;
|
|
||||||
}
|
|
||||||
|
|
||||||
.page-body:lang(zh) {
|
.page-body:lang(zh) {
|
||||||
letter-spacing: 0em;
|
letter-spacing: 0em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.page-body:lang(th) {
|
|
||||||
line-height: 1.35296;
|
|
||||||
letter-spacing: 0em;
|
|
||||||
font-family: "SF Pro TH", "SF Pro Text", "SF Pro Icons", "Helvetica Neue",
|
|
||||||
"Helvetica", "Arial", sans-serif;
|
|
||||||
}
|
|
||||||
|
|
||||||
.page-body:lang(zh-CN) {
|
|
||||||
font-family: "SF Pro SC", "SF Pro Text", "SF Pro Icons", "PingFang SC",
|
|
||||||
"Helvetica Neue", "Helvetica", "Arial", sans-serif;
|
|
||||||
}
|
|
||||||
|
|
||||||
.page-body:lang(zh-HK) {
|
|
||||||
font-family: "SF Pro HK", "SF Pro Text", "SF Pro Icons", "PingFang HK",
|
|
||||||
"Helvetica Neue", "Helvetica", "Arial", sans-serif;
|
|
||||||
}
|
|
||||||
|
|
||||||
.page-body:lang(zh-MO) {
|
|
||||||
font-family: "SF Pro HK", "SF Pro TC", "SF Pro Text", "SF Pro Icons",
|
|
||||||
"PingFang HK", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
|
|
||||||
}
|
|
||||||
|
|
||||||
.page-body:lang(zh-TW) {
|
|
||||||
font-family: "SF Pro TC", "SF Pro Text", "SF Pro Icons", "PingFang TC",
|
|
||||||
"Helvetica Neue", "Helvetica", "Arial", sans-serif;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.page-body-media {
|
.page-body-media {
|
||||||
|
|
@ -6266,7 +6199,7 @@ html.no-touch.no-reduced-motion
|
||||||
line-height: 1.33337;
|
line-height: 1.33337;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
letter-spacing: -0.01em;
|
letter-spacing: -0.01em;
|
||||||
font-family: "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
||||||
"Arial", sans-serif;
|
"Arial", sans-serif;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -6832,21 +6765,12 @@ html.no-touch.no-reduced-motion
|
||||||
}
|
}
|
||||||
|
|
||||||
.picture {
|
.picture {
|
||||||
/* position: absolute; */
|
|
||||||
|
|
||||||
/* left: 50%; */
|
|
||||||
/* top: 0;
|
|
||||||
height: 100%;
|
|
||||||
width: 100%; */
|
|
||||||
/* transform: translateX(-50%); */
|
|
||||||
/* max-width: min(calc(100% - 32px), 650px); */
|
|
||||||
position: relative;
|
position: relative;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: flex-start;
|
align-items: flex-start;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
margin-left: auto;
|
margin-left: auto;
|
||||||
margin-right: auto;
|
margin-right: auto;
|
||||||
max-width: min(calc(100% - 32px), 650px);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.picture.no-dl {
|
.picture.no-dl {
|
||||||
|
|
@ -7383,7 +7307,7 @@ html.no-touch.no-reduced-motion
|
||||||
line-height: 1.33337;
|
line-height: 1.33337;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
letter-spacing: -0.01em;
|
letter-spacing: -0.01em;
|
||||||
font-family: "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
||||||
"Arial", sans-serif;
|
"Arial", sans-serif;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -7548,7 +7472,7 @@ html.no-touch.no-reduced-motion
|
||||||
line-height: 1.28577;
|
line-height: 1.28577;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
letter-spacing: -0.016em;
|
letter-spacing: -0.016em;
|
||||||
font-family: "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica",
|
||||||
"Arial", sans-serif;
|
"Arial", sans-serif;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -7,10 +7,9 @@ export const convertImageToBase64URL = async (filename: Filename, imageType: Ima
|
||||||
try {
|
try {
|
||||||
const buffer = await readFile(filename)
|
const buffer = await readFile(filename)
|
||||||
const base64String = Buffer.from(buffer).toString("base64")
|
const base64String = Buffer.from(buffer).toString("base64")
|
||||||
// console.log(`base64String`, base64String.slice(0, 100));
|
|
||||||
return `data:image/${imageType};base64,${base64String}`
|
return `data:image/${imageType};base64,${base64String}`
|
||||||
}
|
}
|
||||||
catch (error) {
|
catch (error) {
|
||||||
throw new Error(`file ${filename} no exist ❌`)
|
throw new Error(`file ${filename} no exist ❌`, error)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,6 @@ export default {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
darkMode: "class",
|
darkMode: ["selector", "body.theme-dark"],
|
||||||
plugins: [heroui()],
|
plugins: [heroui()],
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue