Compare commits
3 Commits
4cdb90eaf7
...
develop
Author | SHA1 | Date | |
---|---|---|---|
98b9670661 | |||
1353b0e65a | |||
2e3de70f56 |
@ -22,8 +22,8 @@ jobs:
|
||||
|
||||
- name: Upload config files to server
|
||||
env:
|
||||
GITEA_API: "https://gitea.miduway.space/api/v1/repos/levis/ebook/raw/main"
|
||||
GITEA_TOKEN: "0406afe7de6547e850dd62c84976c6def23a5193"
|
||||
GITEA_API: 'https://gitea.miduway.space/api/v1/repos/levis/ebook/raw/main'
|
||||
GITEA_TOKEN: '0406afe7de6547e850dd62c84976c6def23a5193'
|
||||
run: |
|
||||
for file in docker-compose.yml Dockerfile; do
|
||||
echo "Uploading $file"
|
||||
@ -31,4 +31,4 @@ jobs:
|
||||
-H "Authorization: token $GITEA_TOKEN" \
|
||||
-T "$file" \
|
||||
"$GITEA_API/$file"
|
||||
done
|
||||
done
|
3
.gitignore
vendored
@ -11,7 +11,6 @@ node_modules
|
||||
dist
|
||||
dist-ssr
|
||||
*.local
|
||||
.nuxt
|
||||
|
||||
# Editor directories and files
|
||||
.vscode/*
|
||||
@ -25,4 +24,4 @@ dist-ssr
|
||||
*.sw?
|
||||
|
||||
|
||||
frontend.env
|
||||
frontend.env
|
2
.husky/pre-commit
Normal file
@ -0,0 +1,2 @@
|
||||
npm run lint
|
||||
npm run format
|
@ -1,212 +0,0 @@
|
||||
|
||||
import { _replaceAppConfig } from '#app/config'
|
||||
import { defuFn } from 'defu'
|
||||
|
||||
const inlineConfig = {
|
||||
"nuxt": {},
|
||||
"icon": {
|
||||
"provider": "server",
|
||||
"class": "",
|
||||
"aliases": {},
|
||||
"iconifyApiEndpoint": "https://api.iconify.design",
|
||||
"localApiEndpoint": "/api/_nuxt_icon",
|
||||
"fallbackToApi": true,
|
||||
"cssSelectorPrefix": "i-",
|
||||
"cssWherePseudo": true,
|
||||
"mode": "css",
|
||||
"attrs": {
|
||||
"aria-hidden": true
|
||||
},
|
||||
"collections": [
|
||||
"academicons",
|
||||
"akar-icons",
|
||||
"ant-design",
|
||||
"arcticons",
|
||||
"basil",
|
||||
"bi",
|
||||
"bitcoin-icons",
|
||||
"bpmn",
|
||||
"brandico",
|
||||
"bx",
|
||||
"bxl",
|
||||
"bxs",
|
||||
"bytesize",
|
||||
"carbon",
|
||||
"catppuccin",
|
||||
"cbi",
|
||||
"charm",
|
||||
"ci",
|
||||
"cib",
|
||||
"cif",
|
||||
"cil",
|
||||
"circle-flags",
|
||||
"circum",
|
||||
"clarity",
|
||||
"codicon",
|
||||
"covid",
|
||||
"cryptocurrency",
|
||||
"cryptocurrency-color",
|
||||
"dashicons",
|
||||
"devicon",
|
||||
"devicon-plain",
|
||||
"ei",
|
||||
"el",
|
||||
"emojione",
|
||||
"emojione-monotone",
|
||||
"emojione-v1",
|
||||
"entypo",
|
||||
"entypo-social",
|
||||
"eos-icons",
|
||||
"ep",
|
||||
"et",
|
||||
"eva",
|
||||
"f7",
|
||||
"fa",
|
||||
"fa-brands",
|
||||
"fa-regular",
|
||||
"fa-solid",
|
||||
"fa6-brands",
|
||||
"fa6-regular",
|
||||
"fa6-solid",
|
||||
"fad",
|
||||
"fe",
|
||||
"feather",
|
||||
"file-icons",
|
||||
"flag",
|
||||
"flagpack",
|
||||
"flat-color-icons",
|
||||
"flat-ui",
|
||||
"flowbite",
|
||||
"fluent",
|
||||
"fluent-emoji",
|
||||
"fluent-emoji-flat",
|
||||
"fluent-emoji-high-contrast",
|
||||
"fluent-mdl2",
|
||||
"fontelico",
|
||||
"fontisto",
|
||||
"formkit",
|
||||
"foundation",
|
||||
"fxemoji",
|
||||
"gala",
|
||||
"game-icons",
|
||||
"geo",
|
||||
"gg",
|
||||
"gis",
|
||||
"gravity-ui",
|
||||
"gridicons",
|
||||
"grommet-icons",
|
||||
"guidance",
|
||||
"healthicons",
|
||||
"heroicons",
|
||||
"heroicons-outline",
|
||||
"heroicons-solid",
|
||||
"hugeicons",
|
||||
"humbleicons",
|
||||
"ic",
|
||||
"icomoon-free",
|
||||
"icon-park",
|
||||
"icon-park-outline",
|
||||
"icon-park-solid",
|
||||
"icon-park-twotone",
|
||||
"iconamoon",
|
||||
"iconoir",
|
||||
"icons8",
|
||||
"il",
|
||||
"ion",
|
||||
"iwwa",
|
||||
"jam",
|
||||
"la",
|
||||
"lets-icons",
|
||||
"line-md",
|
||||
"logos",
|
||||
"ls",
|
||||
"lucide",
|
||||
"lucide-lab",
|
||||
"mage",
|
||||
"majesticons",
|
||||
"maki",
|
||||
"map",
|
||||
"marketeq",
|
||||
"material-symbols",
|
||||
"material-symbols-light",
|
||||
"mdi",
|
||||
"mdi-light",
|
||||
"medical-icon",
|
||||
"memory",
|
||||
"meteocons",
|
||||
"mi",
|
||||
"mingcute",
|
||||
"mono-icons",
|
||||
"mynaui",
|
||||
"nimbus",
|
||||
"nonicons",
|
||||
"noto",
|
||||
"noto-v1",
|
||||
"octicon",
|
||||
"oi",
|
||||
"ooui",
|
||||
"openmoji",
|
||||
"oui",
|
||||
"pajamas",
|
||||
"pepicons",
|
||||
"pepicons-pencil",
|
||||
"pepicons-pop",
|
||||
"pepicons-print",
|
||||
"ph",
|
||||
"pixelarticons",
|
||||
"prime",
|
||||
"ps",
|
||||
"quill",
|
||||
"radix-icons",
|
||||
"raphael",
|
||||
"ri",
|
||||
"rivet-icons",
|
||||
"si-glyph",
|
||||
"simple-icons",
|
||||
"simple-line-icons",
|
||||
"skill-icons",
|
||||
"solar",
|
||||
"streamline",
|
||||
"streamline-emojis",
|
||||
"subway",
|
||||
"svg-spinners",
|
||||
"system-uicons",
|
||||
"tabler",
|
||||
"tdesign",
|
||||
"teenyicons",
|
||||
"token",
|
||||
"token-branded",
|
||||
"topcoat",
|
||||
"twemoji",
|
||||
"typcn",
|
||||
"uil",
|
||||
"uim",
|
||||
"uis",
|
||||
"uit",
|
||||
"uiw",
|
||||
"unjs",
|
||||
"vaadin",
|
||||
"vs",
|
||||
"vscode-icons",
|
||||
"websymbol",
|
||||
"weui",
|
||||
"whh",
|
||||
"wi",
|
||||
"wpf",
|
||||
"zmdi",
|
||||
"zondicons"
|
||||
],
|
||||
"fetchTimeout": 1500
|
||||
}
|
||||
}
|
||||
|
||||
// Vite - webpack is handled directly in #app/config
|
||||
if (import.meta.hot) {
|
||||
import.meta.hot.accept((newModule) => {
|
||||
_replaceAppConfig(newModule.default)
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
|
||||
export default /*@__PURE__*/ defuFn(inlineConfig)
|
142
.nuxt/components.d.ts
vendored
@ -1,142 +0,0 @@
|
||||
|
||||
import type { DefineComponent, SlotsType } from 'vue'
|
||||
type IslandComponent<T extends DefineComponent> = T & DefineComponent<{}, {refresh: () => Promise<void>}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, SlotsType<{ fallback: { error: unknown } }>>
|
||||
type HydrationStrategies = {
|
||||
hydrateOnVisible?: IntersectionObserverInit | true
|
||||
hydrateOnIdle?: number | true
|
||||
hydrateOnInteraction?: keyof HTMLElementEventMap | Array<keyof HTMLElementEventMap> | true
|
||||
hydrateOnMediaQuery?: string
|
||||
hydrateAfter?: number
|
||||
hydrateWhen?: boolean
|
||||
hydrateNever?: true
|
||||
}
|
||||
type LazyComponent<T> = (T & DefineComponent<HydrationStrategies, {}, {}, {}, {}, {}, {}, { hydrated: () => void }>)
|
||||
interface _GlobalComponents {
|
||||
'TypographyUiHeading': typeof import("../components/Typography/UiHeading.vue")['default']
|
||||
'TypographyUiParagraph': typeof import("../components/Typography/UiParagraph.vue")['default']
|
||||
'UiButtonParams': typeof import("../components/UiButton/UiButton.params")['default']
|
||||
'UiButton': typeof import("../components/UiButton/UiButton.vue")['default']
|
||||
'UiNav': typeof import("../components/UiNav/UiNav.vue")['default']
|
||||
'NuxtWelcome': typeof import("../node_modules/nuxt/dist/app/components/welcome.vue")['default']
|
||||
'NuxtLayout': typeof import("../node_modules/nuxt/dist/app/components/nuxt-layout")['default']
|
||||
'NuxtErrorBoundary': typeof import("../node_modules/nuxt/dist/app/components/nuxt-error-boundary.vue")['default']
|
||||
'ClientOnly': typeof import("../node_modules/nuxt/dist/app/components/client-only")['default']
|
||||
'DevOnly': typeof import("../node_modules/nuxt/dist/app/components/dev-only")['default']
|
||||
'ServerPlaceholder': typeof import("../node_modules/nuxt/dist/app/components/server-placeholder")['default']
|
||||
'NuxtLink': typeof import("../node_modules/nuxt/dist/app/components/nuxt-link")['default']
|
||||
'NuxtLoadingIndicator': typeof import("../node_modules/nuxt/dist/app/components/nuxt-loading-indicator")['default']
|
||||
'NuxtTime': typeof import("../node_modules/nuxt/dist/app/components/nuxt-time.vue")['default']
|
||||
'NuxtRouteAnnouncer': typeof import("../node_modules/nuxt/dist/app/components/nuxt-route-announcer")['default']
|
||||
'NuxtImg': typeof import("../node_modules/@nuxt/image/dist/runtime/components/NuxtImg.vue")['default']
|
||||
'NuxtPicture': typeof import("../node_modules/@nuxt/image/dist/runtime/components/NuxtPicture.vue")['default']
|
||||
'Icon': typeof import("../node_modules/@nuxt/icon/dist/runtime/components/index")['default']
|
||||
'NuxtPage': typeof import("../node_modules/nuxt/dist/pages/runtime/page")['default']
|
||||
'NoScript': typeof import("../node_modules/nuxt/dist/head/runtime/components")['NoScript']
|
||||
'Link': typeof import("../node_modules/nuxt/dist/head/runtime/components")['Link']
|
||||
'Base': typeof import("../node_modules/nuxt/dist/head/runtime/components")['Base']
|
||||
'Title': typeof import("../node_modules/nuxt/dist/head/runtime/components")['Title']
|
||||
'Meta': typeof import("../node_modules/nuxt/dist/head/runtime/components")['Meta']
|
||||
'Style': typeof import("../node_modules/nuxt/dist/head/runtime/components")['Style']
|
||||
'Head': typeof import("../node_modules/nuxt/dist/head/runtime/components")['Head']
|
||||
'Html': typeof import("../node_modules/nuxt/dist/head/runtime/components")['Html']
|
||||
'Body': typeof import("../node_modules/nuxt/dist/head/runtime/components")['Body']
|
||||
'NuxtIsland': typeof import("../node_modules/nuxt/dist/app/components/nuxt-island")['default']
|
||||
'NuxtRouteAnnouncer': IslandComponent<typeof import("../node_modules/nuxt/dist/app/components/server-placeholder")['default']>
|
||||
'LazyTypographyUiHeading': LazyComponent<typeof import("../components/Typography/UiHeading.vue")['default']>
|
||||
'LazyTypographyUiParagraph': LazyComponent<typeof import("../components/Typography/UiParagraph.vue")['default']>
|
||||
'LazyUiButtonParams': LazyComponent<typeof import("../components/UiButton/UiButton.params")['default']>
|
||||
'LazyUiButton': LazyComponent<typeof import("../components/UiButton/UiButton.vue")['default']>
|
||||
'LazyUiNav': LazyComponent<typeof import("../components/UiNav/UiNav.vue")['default']>
|
||||
'LazyNuxtWelcome': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/welcome.vue")['default']>
|
||||
'LazyNuxtLayout': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-layout")['default']>
|
||||
'LazyNuxtErrorBoundary': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-error-boundary.vue")['default']>
|
||||
'LazyClientOnly': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/client-only")['default']>
|
||||
'LazyDevOnly': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/dev-only")['default']>
|
||||
'LazyServerPlaceholder': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/server-placeholder")['default']>
|
||||
'LazyNuxtLink': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-link")['default']>
|
||||
'LazyNuxtLoadingIndicator': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-loading-indicator")['default']>
|
||||
'LazyNuxtTime': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-time.vue")['default']>
|
||||
'LazyNuxtRouteAnnouncer': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-route-announcer")['default']>
|
||||
'LazyNuxtImg': LazyComponent<typeof import("../node_modules/@nuxt/image/dist/runtime/components/NuxtImg.vue")['default']>
|
||||
'LazyNuxtPicture': LazyComponent<typeof import("../node_modules/@nuxt/image/dist/runtime/components/NuxtPicture.vue")['default']>
|
||||
'LazyIcon': LazyComponent<typeof import("../node_modules/@nuxt/icon/dist/runtime/components/index")['default']>
|
||||
'LazyNuxtPage': LazyComponent<typeof import("../node_modules/nuxt/dist/pages/runtime/page")['default']>
|
||||
'LazyNoScript': LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['NoScript']>
|
||||
'LazyLink': LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Link']>
|
||||
'LazyBase': LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Base']>
|
||||
'LazyTitle': LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Title']>
|
||||
'LazyMeta': LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Meta']>
|
||||
'LazyStyle': LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Style']>
|
||||
'LazyHead': LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Head']>
|
||||
'LazyHtml': LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Html']>
|
||||
'LazyBody': LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Body']>
|
||||
'LazyNuxtIsland': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-island")['default']>
|
||||
'LazyNuxtRouteAnnouncer': LazyComponent<IslandComponent<typeof import("../node_modules/nuxt/dist/app/components/server-placeholder")['default']>>
|
||||
}
|
||||
|
||||
declare module 'vue' {
|
||||
export interface GlobalComponents extends _GlobalComponents { }
|
||||
}
|
||||
|
||||
export const TypographyUiHeading: typeof import("../components/Typography/UiHeading.vue")['default']
|
||||
export const TypographyUiParagraph: typeof import("../components/Typography/UiParagraph.vue")['default']
|
||||
export const UiButtonParams: typeof import("../components/UiButton/UiButton.params")['default']
|
||||
export const UiButton: typeof import("../components/UiButton/UiButton.vue")['default']
|
||||
export const UiNav: typeof import("../components/UiNav/UiNav.vue")['default']
|
||||
export const NuxtWelcome: typeof import("../node_modules/nuxt/dist/app/components/welcome.vue")['default']
|
||||
export const NuxtLayout: typeof import("../node_modules/nuxt/dist/app/components/nuxt-layout")['default']
|
||||
export const NuxtErrorBoundary: typeof import("../node_modules/nuxt/dist/app/components/nuxt-error-boundary.vue")['default']
|
||||
export const ClientOnly: typeof import("../node_modules/nuxt/dist/app/components/client-only")['default']
|
||||
export const DevOnly: typeof import("../node_modules/nuxt/dist/app/components/dev-only")['default']
|
||||
export const ServerPlaceholder: typeof import("../node_modules/nuxt/dist/app/components/server-placeholder")['default']
|
||||
export const NuxtLink: typeof import("../node_modules/nuxt/dist/app/components/nuxt-link")['default']
|
||||
export const NuxtLoadingIndicator: typeof import("../node_modules/nuxt/dist/app/components/nuxt-loading-indicator")['default']
|
||||
export const NuxtTime: typeof import("../node_modules/nuxt/dist/app/components/nuxt-time.vue")['default']
|
||||
export const NuxtRouteAnnouncer: typeof import("../node_modules/nuxt/dist/app/components/nuxt-route-announcer")['default']
|
||||
export const NuxtImg: typeof import("../node_modules/@nuxt/image/dist/runtime/components/NuxtImg.vue")['default']
|
||||
export const NuxtPicture: typeof import("../node_modules/@nuxt/image/dist/runtime/components/NuxtPicture.vue")['default']
|
||||
export const Icon: typeof import("../node_modules/@nuxt/icon/dist/runtime/components/index")['default']
|
||||
export const NuxtPage: typeof import("../node_modules/nuxt/dist/pages/runtime/page")['default']
|
||||
export const NoScript: typeof import("../node_modules/nuxt/dist/head/runtime/components")['NoScript']
|
||||
export const Link: typeof import("../node_modules/nuxt/dist/head/runtime/components")['Link']
|
||||
export const Base: typeof import("../node_modules/nuxt/dist/head/runtime/components")['Base']
|
||||
export const Title: typeof import("../node_modules/nuxt/dist/head/runtime/components")['Title']
|
||||
export const Meta: typeof import("../node_modules/nuxt/dist/head/runtime/components")['Meta']
|
||||
export const Style: typeof import("../node_modules/nuxt/dist/head/runtime/components")['Style']
|
||||
export const Head: typeof import("../node_modules/nuxt/dist/head/runtime/components")['Head']
|
||||
export const Html: typeof import("../node_modules/nuxt/dist/head/runtime/components")['Html']
|
||||
export const Body: typeof import("../node_modules/nuxt/dist/head/runtime/components")['Body']
|
||||
export const NuxtIsland: typeof import("../node_modules/nuxt/dist/app/components/nuxt-island")['default']
|
||||
export const NuxtRouteAnnouncer: IslandComponent<typeof import("../node_modules/nuxt/dist/app/components/server-placeholder")['default']>
|
||||
export const LazyTypographyUiHeading: LazyComponent<typeof import("../components/Typography/UiHeading.vue")['default']>
|
||||
export const LazyTypographyUiParagraph: LazyComponent<typeof import("../components/Typography/UiParagraph.vue")['default']>
|
||||
export const LazyUiButtonParams: LazyComponent<typeof import("../components/UiButton/UiButton.params")['default']>
|
||||
export const LazyUiButton: LazyComponent<typeof import("../components/UiButton/UiButton.vue")['default']>
|
||||
export const LazyUiNav: LazyComponent<typeof import("../components/UiNav/UiNav.vue")['default']>
|
||||
export const LazyNuxtWelcome: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/welcome.vue")['default']>
|
||||
export const LazyNuxtLayout: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-layout")['default']>
|
||||
export const LazyNuxtErrorBoundary: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-error-boundary.vue")['default']>
|
||||
export const LazyClientOnly: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/client-only")['default']>
|
||||
export const LazyDevOnly: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/dev-only")['default']>
|
||||
export const LazyServerPlaceholder: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/server-placeholder")['default']>
|
||||
export const LazyNuxtLink: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-link")['default']>
|
||||
export const LazyNuxtLoadingIndicator: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-loading-indicator")['default']>
|
||||
export const LazyNuxtTime: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-time.vue")['default']>
|
||||
export const LazyNuxtRouteAnnouncer: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-route-announcer")['default']>
|
||||
export const LazyNuxtImg: LazyComponent<typeof import("../node_modules/@nuxt/image/dist/runtime/components/NuxtImg.vue")['default']>
|
||||
export const LazyNuxtPicture: LazyComponent<typeof import("../node_modules/@nuxt/image/dist/runtime/components/NuxtPicture.vue")['default']>
|
||||
export const LazyIcon: LazyComponent<typeof import("../node_modules/@nuxt/icon/dist/runtime/components/index")['default']>
|
||||
export const LazyNuxtPage: LazyComponent<typeof import("../node_modules/nuxt/dist/pages/runtime/page")['default']>
|
||||
export const LazyNoScript: LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['NoScript']>
|
||||
export const LazyLink: LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Link']>
|
||||
export const LazyBase: LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Base']>
|
||||
export const LazyTitle: LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Title']>
|
||||
export const LazyMeta: LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Meta']>
|
||||
export const LazyStyle: LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Style']>
|
||||
export const LazyHead: LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Head']>
|
||||
export const LazyHtml: LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Html']>
|
||||
export const LazyBody: LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Body']>
|
||||
export const LazyNuxtIsland: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-island")['default']>
|
||||
export const LazyNuxtRouteAnnouncer: LazyComponent<IslandComponent<typeof import("../node_modules/nuxt/dist/app/components/server-placeholder")['default']>>
|
||||
|
||||
export const componentNames: string[]
|
@ -1,9 +0,0 @@
|
||||
import type { FlatConfigComposer } from "../node_modules/eslint-flat-config-utils/dist/index.mjs"
|
||||
import { defineFlatConfigs } from "../node_modules/@nuxt/eslint-config/dist/flat.mjs"
|
||||
import type { NuxtESLintConfigOptionsResolved } from "../node_modules/@nuxt/eslint-config/dist/flat.mjs"
|
||||
|
||||
declare const configs: FlatConfigComposer
|
||||
declare const options: NuxtESLintConfigOptionsResolved
|
||||
declare const withNuxt: typeof defineFlatConfigs
|
||||
export default withNuxt
|
||||
export { withNuxt, defineFlatConfigs, configs, options }
|
33
.nuxt/imports.d.ts
vendored
@ -1,33 +0,0 @@
|
||||
export { useScriptTriggerConsent, useScriptEventPage, useScriptTriggerElement, useScript, useScriptGoogleAnalytics, useScriptPlausibleAnalytics, useScriptCrisp, useScriptClarity, useScriptCloudflareWebAnalytics, useScriptFathomAnalytics, useScriptMatomoAnalytics, useScriptGoogleTagManager, useScriptGoogleAdsense, useScriptSegment, useScriptMetaPixel, useScriptXPixel, useScriptIntercom, useScriptHotjar, useScriptStripe, useScriptLemonSqueezy, useScriptVimeoPlayer, useScriptYouTubePlayer, useScriptGoogleMaps, useScriptNpm, useScriptUmamiAnalytics, useScriptSnapchatPixel, useScriptRybbitAnalytics } from '#app/composables/script-stubs';
|
||||
export { isVue2, isVue3 } from 'vue-demi';
|
||||
export { defineNuxtLink } from '#app/components/nuxt-link';
|
||||
export { useNuxtApp, tryUseNuxtApp, defineNuxtPlugin, definePayloadPlugin, useRuntimeConfig, defineAppConfig } from '#app/nuxt';
|
||||
export { useAppConfig, updateAppConfig } from '#app/config';
|
||||
export { defineNuxtComponent } from '#app/composables/component';
|
||||
export { useAsyncData, useLazyAsyncData, useNuxtData, refreshNuxtData, clearNuxtData } from '#app/composables/asyncData';
|
||||
export { useHydration } from '#app/composables/hydrate';
|
||||
export { callOnce } from '#app/composables/once';
|
||||
export { useState, clearNuxtState } from '#app/composables/state';
|
||||
export { clearError, createError, isNuxtError, showError, useError } from '#app/composables/error';
|
||||
export { useFetch, useLazyFetch } from '#app/composables/fetch';
|
||||
export { useCookie, refreshCookie } from '#app/composables/cookie';
|
||||
export { onPrehydrate, prerenderRoutes, useRequestHeader, useRequestHeaders, useResponseHeader, useRequestEvent, useRequestFetch, setResponseStatus } from '#app/composables/ssr';
|
||||
export { onNuxtReady } from '#app/composables/ready';
|
||||
export { preloadComponents, prefetchComponents, preloadRouteComponents } from '#app/composables/preload';
|
||||
export { abortNavigation, addRouteMiddleware, defineNuxtRouteMiddleware, setPageLayout, navigateTo, useRoute, useRouter } from '#app/composables/router';
|
||||
export { isPrerendered, loadPayload, preloadPayload, definePayloadReducer, definePayloadReviver } from '#app/composables/payload';
|
||||
export { useLoadingIndicator } from '#app/composables/loading-indicator';
|
||||
export { getAppManifest, getRouteRules } from '#app/composables/manifest';
|
||||
export { reloadNuxtApp } from '#app/composables/chunk';
|
||||
export { useRequestURL } from '#app/composables/url';
|
||||
export { usePreviewMode } from '#app/composables/preview';
|
||||
export { useRouteAnnouncer } from '#app/composables/route-announcer';
|
||||
export { useRuntimeHook } from '#app/composables/runtime-hook';
|
||||
export { useHead, useHeadSafe, useServerHeadSafe, useServerHead, useSeoMeta, useServerSeoMeta, injectHead } from '#app/composables/head';
|
||||
export { onBeforeRouteLeave, onBeforeRouteUpdate, useLink } from 'vue-router';
|
||||
export { withCtx, withDirectives, withKeys, withMemo, withModifiers, withScopeId, onActivated, onBeforeMount, onBeforeUnmount, onBeforeUpdate, onDeactivated, onErrorCaptured, onMounted, onRenderTracked, onRenderTriggered, onServerPrefetch, onUnmounted, onUpdated, computed, customRef, isProxy, isReactive, isReadonly, isRef, markRaw, proxyRefs, reactive, readonly, ref, shallowReactive, shallowReadonly, shallowRef, toRaw, toRef, toRefs, triggerRef, unref, watch, watchEffect, watchPostEffect, watchSyncEffect, isShallow, effect, effectScope, getCurrentScope, onScopeDispose, defineComponent, defineAsyncComponent, resolveComponent, getCurrentInstance, h, inject, hasInjectionContext, nextTick, provide, mergeModels, toValue, useModel, useAttrs, useCssModule, useCssVars, useSlots, useTransitionState, useId, useTemplateRef, useShadowRoot, Component, ComponentPublicInstance, ComputedRef, DirectiveBinding, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, MaybeRef, MaybeRefOrGetter, VNode, WritableComputedRef } from 'vue';
|
||||
export { requestIdleCallback, cancelIdleCallback } from '#app/compat/idle-callback';
|
||||
export { setInterval } from '#app/compat/interval';
|
||||
export { useImage } from '../node_modules/@nuxt/image/dist/runtime/composables';
|
||||
export { defineStore, acceptHMRUpdate, usePinia, storeToRefs } from '../node_modules/@pinia/nuxt/dist/runtime/composables';
|
||||
export { definePageMeta } from '../node_modules/nuxt/dist/pages/runtime/composables';
|
@ -1 +0,0 @@
|
||||
{}
|
@ -1 +0,0 @@
|
||||
export function init() {}
|
@ -1,13 +0,0 @@
|
||||
function createRemoteCollection(fetchEndpoint) {
|
||||
let _cache
|
||||
return async () => {
|
||||
if (_cache)
|
||||
return _cache
|
||||
const res = await fetch(fetchEndpoint).then(r => r.json())
|
||||
_cache = res
|
||||
return res
|
||||
}
|
||||
}
|
||||
|
||||
export const collections = {
|
||||
}
|
28
.nuxt/nuxt.d.ts
vendored
@ -1,28 +0,0 @@
|
||||
/// <reference types="@nuxt/eslint" />
|
||||
/// <reference types="@nuxt/icon" />
|
||||
/// <reference types="@nuxt/image" />
|
||||
/// <reference types="@nuxtjs/tailwindcss" />
|
||||
/// <reference types="@pinia/nuxt" />
|
||||
/// <reference types="@nuxt/devtools" />
|
||||
/// <reference types="@pinia/nuxt" />
|
||||
/// <reference types="@nuxt/telemetry" />
|
||||
/// <reference path="types/builder-env.d.ts" />
|
||||
/// <reference types="nuxt" />
|
||||
/// <reference path="types/app-defaults.d.ts" />
|
||||
/// <reference path="types/plugins.d.ts" />
|
||||
/// <reference path="types/build.d.ts" />
|
||||
/// <reference path="types/schema.d.ts" />
|
||||
/// <reference path="types/app.config.d.ts" />
|
||||
/// <reference types="@pinia/nuxt" />
|
||||
/// <reference types="vue-router" />
|
||||
/// <reference path="types/middleware.d.ts" />
|
||||
/// <reference path="types/nitro-middleware.d.ts" />
|
||||
/// <reference path="types/layouts.d.ts" />
|
||||
/// <reference path="components.d.ts" />
|
||||
/// <reference path="imports.d.ts" />
|
||||
/// <reference path="types/imports.d.ts" />
|
||||
/// <reference path="schema/nuxt.schema.d.ts" />
|
||||
/// <reference path="types/nitro.d.ts" />
|
||||
/// <reference path="./eslint-typegen.d.ts" />
|
||||
|
||||
export {}
|
@ -1,9 +0,0 @@
|
||||
{
|
||||
"_hash": "Jy8xlnyM_ez4SXb8mXRnzjMzW4U1Bea8kDWN3ScyVNQ",
|
||||
"project": {
|
||||
"rootDir": "/Users/dkoziavin/code/sub-projects/e-book"
|
||||
},
|
||||
"versions": {
|
||||
"nuxt": "3.17.5"
|
||||
}
|
||||
}
|
210
.nuxt/schema/nuxt.schema.d.ts
vendored
@ -1,210 +0,0 @@
|
||||
export interface NuxtCustomSchema {
|
||||
appConfig?: {
|
||||
/**
|
||||
* Nuxt Icon
|
||||
*
|
||||
* Configure Nuxt Icon module preferences.
|
||||
*
|
||||
*
|
||||
* @studioIcon material-symbols:star
|
||||
*/
|
||||
icon?: {
|
||||
/**
|
||||
* Icon Size
|
||||
*
|
||||
* Set the default icon size.
|
||||
*
|
||||
*
|
||||
* @studioIcon material-symbols:format-size-rounded
|
||||
*/
|
||||
size?: string | undefined,
|
||||
|
||||
/**
|
||||
* CSS Class
|
||||
*
|
||||
* Set the default CSS class.
|
||||
*
|
||||
* @default ""
|
||||
*
|
||||
* @studioIcon material-symbols:css
|
||||
*/
|
||||
class?: string,
|
||||
|
||||
/**
|
||||
* Default Attributes
|
||||
*
|
||||
* Attributes applied to every icon component.
|
||||
*
|
||||
* @default { "aria-hidden": true }
|
||||
*
|
||||
*
|
||||
* @studioIcon material-symbols:settings
|
||||
*/
|
||||
attrs?: Record<string, string | number | boolean>,
|
||||
|
||||
/**
|
||||
* Default Rendering Mode
|
||||
*
|
||||
* Set the default rendering mode for the icon component
|
||||
*
|
||||
* @default "css"
|
||||
*
|
||||
* @enum css,svg
|
||||
*
|
||||
* @studioIcon material-symbols:move-down-rounded
|
||||
*/
|
||||
mode?: string,
|
||||
|
||||
/**
|
||||
* Icon aliases
|
||||
*
|
||||
* Define Icon aliases to update them easily without code changes.
|
||||
*
|
||||
*
|
||||
* @studioIcon material-symbols:star-rounded
|
||||
*/
|
||||
aliases?: { [alias: string]: string },
|
||||
|
||||
/**
|
||||
* CSS Selector Prefix
|
||||
*
|
||||
* Set the default CSS selector prefix.
|
||||
*
|
||||
* @default "i-"
|
||||
*
|
||||
* @studioIcon material-symbols:format-textdirection-l-to-r
|
||||
*/
|
||||
cssSelectorPrefix?: string,
|
||||
|
||||
/**
|
||||
* CSS Layer Name
|
||||
*
|
||||
* Set the default CSS `@layer` name.
|
||||
*
|
||||
*
|
||||
* @studioIcon material-symbols:layers
|
||||
*/
|
||||
cssLayer?: string | undefined,
|
||||
|
||||
/**
|
||||
* Use CSS `:where()` Pseudo Selector
|
||||
*
|
||||
* Use CSS `:where()` pseudo selector to reduce specificity.
|
||||
*
|
||||
* @default true
|
||||
*
|
||||
* @studioIcon material-symbols:low-priority
|
||||
*/
|
||||
cssWherePseudo?: boolean,
|
||||
|
||||
/**
|
||||
* Icon Collections
|
||||
*
|
||||
* List of known icon collections name. Used to resolve collection name ambiguity.
|
||||
* e.g. `simple-icons-github` -> `simple-icons:github` instead of `simple:icons-github`
|
||||
*
|
||||
* When not provided, will use the full Iconify collection list.
|
||||
*
|
||||
*
|
||||
* @studioIcon material-symbols:format-list-bulleted
|
||||
*/
|
||||
collections?: string[] | null,
|
||||
|
||||
/**
|
||||
* Custom Icon Collections
|
||||
*
|
||||
*
|
||||
* @studioIcon material-symbols:format-list-bulleted
|
||||
*/
|
||||
customCollections?: string[] | null,
|
||||
|
||||
/**
|
||||
* Icon Provider
|
||||
*
|
||||
* Provider to use for fetching icons
|
||||
*
|
||||
* - `server` - Fetch icons with a server handler
|
||||
* - `iconify` - Fetch icons with Iconify API, purely client-side
|
||||
* - `none` - Do not fetch icons (use client bundle only)
|
||||
*
|
||||
* `server` by default; `iconify` when `ssr: false`
|
||||
*
|
||||
*
|
||||
* @enum server,iconify,none
|
||||
*
|
||||
* @studioIcon material-symbols:cloud
|
||||
*/
|
||||
provider?: "server" | "iconify" | undefined,
|
||||
|
||||
/**
|
||||
* Iconify API Endpoint URL
|
||||
*
|
||||
* Define a custom Iconify API endpoint URL. Useful if you want to use a self-hosted Iconify API. Learn more: https://iconify.design/docs/api.
|
||||
*
|
||||
* @default "https://api.iconify.design"
|
||||
*
|
||||
* @studioIcon material-symbols:api
|
||||
*/
|
||||
iconifyApiEndpoint?: string,
|
||||
|
||||
/**
|
||||
* Fallback to Iconify API
|
||||
*
|
||||
* Fallback to Iconify API if server provider fails to found the collection.
|
||||
*
|
||||
* @default true
|
||||
*
|
||||
* @enum true,false,server-only,client-only
|
||||
*
|
||||
* @studioIcon material-symbols:public
|
||||
*/
|
||||
fallbackToApi?: boolean | "server-only" | "client-only",
|
||||
|
||||
/**
|
||||
* Local API Endpoint Path
|
||||
*
|
||||
* Define a custom path for the local API endpoint.
|
||||
*
|
||||
* @default "/api/_nuxt_icon"
|
||||
*
|
||||
* @studioIcon material-symbols:api
|
||||
*/
|
||||
localApiEndpoint?: string,
|
||||
|
||||
/**
|
||||
* Fetch Timeout
|
||||
*
|
||||
* Set the timeout for fetching icons.
|
||||
*
|
||||
* @default 1500
|
||||
*
|
||||
* @studioIcon material-symbols:timer
|
||||
*/
|
||||
fetchTimeout?: number,
|
||||
|
||||
/**
|
||||
* Customize callback
|
||||
*
|
||||
* Customize icon content (replace stroke-width, colors, etc...).
|
||||
*
|
||||
*
|
||||
* @studioIcon material-symbols:edit
|
||||
*/
|
||||
customize?: IconifyIconCustomizeCallback,
|
||||
},
|
||||
},
|
||||
}
|
||||
export type CustomAppConfig = Exclude<NuxtCustomSchema['appConfig'], undefined>
|
||||
type _CustomAppConfig = CustomAppConfig
|
||||
|
||||
declare module '@nuxt/schema' {
|
||||
interface NuxtConfig extends Omit<NuxtCustomSchema, 'appConfig'> {}
|
||||
interface NuxtOptions extends Omit<NuxtCustomSchema, 'appConfig'> {}
|
||||
interface CustomAppConfig extends _CustomAppConfig {}
|
||||
}
|
||||
|
||||
declare module 'nuxt/schema' {
|
||||
interface NuxtConfig extends Omit<NuxtCustomSchema, 'appConfig'> {}
|
||||
interface NuxtOptions extends Omit<NuxtCustomSchema, 'appConfig'> {}
|
||||
interface CustomAppConfig extends _CustomAppConfig {}
|
||||
}
|
@ -1,263 +0,0 @@
|
||||
{
|
||||
"id": "#",
|
||||
"properties": {
|
||||
"appConfig": {
|
||||
"id": "#appConfig",
|
||||
"properties": {
|
||||
"icon": {
|
||||
"title": "Nuxt Icon",
|
||||
"description": "Configure Nuxt Icon module preferences.",
|
||||
"tags": [
|
||||
"@studioIcon material-symbols:star"
|
||||
],
|
||||
"id": "#appConfig/icon",
|
||||
"properties": {
|
||||
"size": {
|
||||
"title": "Icon Size",
|
||||
"description": "Set the default icon size.",
|
||||
"tags": [
|
||||
"@studioIcon material-symbols:format-size-rounded"
|
||||
],
|
||||
"tsType": "string | undefined",
|
||||
"id": "#appConfig/icon/size",
|
||||
"default": {},
|
||||
"type": "any"
|
||||
},
|
||||
"class": {
|
||||
"title": "CSS Class",
|
||||
"description": "Set the default CSS class.",
|
||||
"tags": [
|
||||
"@studioIcon material-symbols:css"
|
||||
],
|
||||
"id": "#appConfig/icon/class",
|
||||
"default": "",
|
||||
"type": "string"
|
||||
},
|
||||
"attrs": {
|
||||
"title": "Default Attributes",
|
||||
"description": "Attributes applied to every icon component.\n\n@default { \"aria-hidden\": true }",
|
||||
"tags": [
|
||||
"@studioIcon material-symbols:settings"
|
||||
],
|
||||
"tsType": "Record<string, string | number | boolean>",
|
||||
"id": "#appConfig/icon/attrs",
|
||||
"default": {
|
||||
"aria-hidden": true
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"mode": {
|
||||
"title": "Default Rendering Mode",
|
||||
"description": "Set the default rendering mode for the icon component",
|
||||
"enum": [
|
||||
"css",
|
||||
"svg"
|
||||
],
|
||||
"tags": [
|
||||
"@studioIcon material-symbols:move-down-rounded"
|
||||
],
|
||||
"id": "#appConfig/icon/mode",
|
||||
"default": "css",
|
||||
"type": "string"
|
||||
},
|
||||
"aliases": {
|
||||
"title": "Icon aliases",
|
||||
"description": "Define Icon aliases to update them easily without code changes.",
|
||||
"tags": [
|
||||
"@studioIcon material-symbols:star-rounded"
|
||||
],
|
||||
"tsType": "{ [alias: string]: string }",
|
||||
"id": "#appConfig/icon/aliases",
|
||||
"default": {},
|
||||
"type": "object"
|
||||
},
|
||||
"cssSelectorPrefix": {
|
||||
"title": "CSS Selector Prefix",
|
||||
"description": "Set the default CSS selector prefix.",
|
||||
"tags": [
|
||||
"@studioIcon material-symbols:format-textdirection-l-to-r"
|
||||
],
|
||||
"id": "#appConfig/icon/cssSelectorPrefix",
|
||||
"default": "i-",
|
||||
"type": "string"
|
||||
},
|
||||
"cssLayer": {
|
||||
"title": "CSS Layer Name",
|
||||
"description": "Set the default CSS `@layer` name.",
|
||||
"tags": [
|
||||
"@studioIcon material-symbols:layers"
|
||||
],
|
||||
"tsType": "string | undefined",
|
||||
"id": "#appConfig/icon/cssLayer",
|
||||
"default": {},
|
||||
"type": "any"
|
||||
},
|
||||
"cssWherePseudo": {
|
||||
"title": "Use CSS `:where()` Pseudo Selector",
|
||||
"description": "Use CSS `:where()` pseudo selector to reduce specificity.",
|
||||
"tags": [
|
||||
"@studioIcon material-symbols:low-priority"
|
||||
],
|
||||
"id": "#appConfig/icon/cssWherePseudo",
|
||||
"default": true,
|
||||
"type": "boolean"
|
||||
},
|
||||
"collections": {
|
||||
"title": "Icon Collections",
|
||||
"description": "List of known icon collections name. Used to resolve collection name ambiguity.\ne.g. `simple-icons-github` -> `simple-icons:github` instead of `simple:icons-github`\n\nWhen not provided, will use the full Iconify collection list.",
|
||||
"tags": [
|
||||
"@studioIcon material-symbols:format-list-bulleted"
|
||||
],
|
||||
"tsType": "string[] | null",
|
||||
"id": "#appConfig/icon/collections",
|
||||
"default": null,
|
||||
"type": "any"
|
||||
},
|
||||
"customCollections": {
|
||||
"title": "Custom Icon Collections",
|
||||
"tags": [
|
||||
"@studioIcon material-symbols:format-list-bulleted"
|
||||
],
|
||||
"tsType": "string[] | null",
|
||||
"id": "#appConfig/icon/customCollections",
|
||||
"default": null,
|
||||
"type": "any"
|
||||
},
|
||||
"provider": {
|
||||
"title": "Icon Provider",
|
||||
"description": "Provider to use for fetching icons\n\n- `server` - Fetch icons with a server handler\n- `iconify` - Fetch icons with Iconify API, purely client-side\n- `none` - Do not fetch icons (use client bundle only)\n\n`server` by default; `iconify` when `ssr: false`",
|
||||
"enum": [
|
||||
"server",
|
||||
"iconify",
|
||||
"none"
|
||||
],
|
||||
"tags": [
|
||||
"@studioIcon material-symbols:cloud"
|
||||
],
|
||||
"type": "\"server\" | \"iconify\" | undefined",
|
||||
"id": "#appConfig/icon/provider"
|
||||
},
|
||||
"iconifyApiEndpoint": {
|
||||
"title": "Iconify API Endpoint URL",
|
||||
"description": "Define a custom Iconify API endpoint URL. Useful if you want to use a self-hosted Iconify API. Learn more: https://iconify.design/docs/api.",
|
||||
"tags": [
|
||||
"@studioIcon material-symbols:api"
|
||||
],
|
||||
"id": "#appConfig/icon/iconifyApiEndpoint",
|
||||
"default": "https://api.iconify.design",
|
||||
"type": "string"
|
||||
},
|
||||
"fallbackToApi": {
|
||||
"title": "Fallback to Iconify API",
|
||||
"description": "Fallback to Iconify API if server provider fails to found the collection.",
|
||||
"tags": [
|
||||
"@studioIcon material-symbols:public"
|
||||
],
|
||||
"enum": [
|
||||
true,
|
||||
false,
|
||||
"server-only",
|
||||
"client-only"
|
||||
],
|
||||
"type": "boolean | \"server-only\" | \"client-only\"",
|
||||
"id": "#appConfig/icon/fallbackToApi",
|
||||
"default": true
|
||||
},
|
||||
"localApiEndpoint": {
|
||||
"title": "Local API Endpoint Path",
|
||||
"description": "Define a custom path for the local API endpoint.",
|
||||
"tags": [
|
||||
"@studioIcon material-symbols:api"
|
||||
],
|
||||
"id": "#appConfig/icon/localApiEndpoint",
|
||||
"default": "/api/_nuxt_icon",
|
||||
"type": "string"
|
||||
},
|
||||
"fetchTimeout": {
|
||||
"title": "Fetch Timeout",
|
||||
"description": "Set the timeout for fetching icons.",
|
||||
"tags": [
|
||||
"@studioIcon material-symbols:timer"
|
||||
],
|
||||
"id": "#appConfig/icon/fetchTimeout",
|
||||
"default": 1500,
|
||||
"type": "number"
|
||||
},
|
||||
"customize": {
|
||||
"title": "Customize callback",
|
||||
"description": "Customize icon content (replace stroke-width, colors, etc...).",
|
||||
"tags": [
|
||||
"@studioIcon material-symbols:edit"
|
||||
],
|
||||
"type": "IconifyIconCustomizeCallback",
|
||||
"id": "#appConfig/icon/customize"
|
||||
}
|
||||
},
|
||||
"type": "object",
|
||||
"default": {
|
||||
"size": {},
|
||||
"class": "",
|
||||
"attrs": {
|
||||
"aria-hidden": true
|
||||
},
|
||||
"mode": "css",
|
||||
"aliases": {},
|
||||
"cssSelectorPrefix": "i-",
|
||||
"cssLayer": {},
|
||||
"cssWherePseudo": true,
|
||||
"collections": null,
|
||||
"customCollections": null,
|
||||
"iconifyApiEndpoint": "https://api.iconify.design",
|
||||
"fallbackToApi": true,
|
||||
"localApiEndpoint": "/api/_nuxt_icon",
|
||||
"fetchTimeout": 1500
|
||||
}
|
||||
}
|
||||
},
|
||||
"type": "object",
|
||||
"default": {
|
||||
"icon": {
|
||||
"size": {},
|
||||
"class": "",
|
||||
"attrs": {
|
||||
"aria-hidden": true
|
||||
},
|
||||
"mode": "css",
|
||||
"aliases": {},
|
||||
"cssSelectorPrefix": "i-",
|
||||
"cssLayer": {},
|
||||
"cssWherePseudo": true,
|
||||
"collections": null,
|
||||
"customCollections": null,
|
||||
"iconifyApiEndpoint": "https://api.iconify.design",
|
||||
"fallbackToApi": true,
|
||||
"localApiEndpoint": "/api/_nuxt_icon",
|
||||
"fetchTimeout": 1500
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"type": "object",
|
||||
"default": {
|
||||
"appConfig": {
|
||||
"icon": {
|
||||
"size": {},
|
||||
"class": "",
|
||||
"attrs": {
|
||||
"aria-hidden": true
|
||||
},
|
||||
"mode": "css",
|
||||
"aliases": {},
|
||||
"cssSelectorPrefix": "i-",
|
||||
"cssLayer": {},
|
||||
"cssWherePseudo": true,
|
||||
"collections": null,
|
||||
"customCollections": null,
|
||||
"iconifyApiEndpoint": "https://api.iconify.design",
|
||||
"fallbackToApi": true,
|
||||
"localApiEndpoint": "/api/_nuxt_icon",
|
||||
"fetchTimeout": 1500
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -1,14 +0,0 @@
|
||||
// generated by the @nuxtjs/tailwindcss <https://github.com/nuxt-modules/tailwindcss> module at 6/18/2025, 8:40:13 AM
|
||||
import "@nuxtjs/tailwindcss/config-ctx"
|
||||
import configMerger from "@nuxtjs/tailwindcss/merger";
|
||||
|
||||
import cfg2 from "./../../tailwind.config.ts";
|
||||
const config = [
|
||||
{"content":{"files":["/Users/dkoziavin/code/sub-projects/e-book/components/**/*.{vue,js,jsx,mjs,ts,tsx}","/Users/dkoziavin/code/sub-projects/e-book/components/global/**/*.{vue,js,jsx,mjs,ts,tsx}","/Users/dkoziavin/code/sub-projects/e-book/components/**/*.{vue,js,jsx,mjs,ts,tsx}","/Users/dkoziavin/code/sub-projects/e-book/layouts/**/*.{vue,js,jsx,mjs,ts,tsx}","/Users/dkoziavin/code/sub-projects/e-book/plugins/**/*.{js,ts,mjs}","/Users/dkoziavin/code/sub-projects/e-book/composables/**/*.{js,ts,mjs}","/Users/dkoziavin/code/sub-projects/e-book/utils/**/*.{js,ts,mjs}","/Users/dkoziavin/code/sub-projects/e-book/pages/**/*.{vue,js,jsx,mjs,ts,tsx}","/Users/dkoziavin/code/sub-projects/e-book/{A,a}pp.{vue,js,jsx,mjs,ts,tsx}","/Users/dkoziavin/code/sub-projects/e-book/{E,e}rror.{vue,js,jsx,mjs,ts,tsx}","/Users/dkoziavin/code/sub-projects/e-book/app.config.{js,ts,mjs}"]}},
|
||||
{},
|
||||
cfg2
|
||||
].reduce((acc, curr) => configMerger(acc, curr), {});
|
||||
|
||||
const resolvedConfig = config;
|
||||
|
||||
export default resolvedConfig;
|
@ -1,209 +0,0 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"paths": {
|
||||
"nitropack/types": [
|
||||
"../node_modules/nitropack/types"
|
||||
],
|
||||
"nitropack/runtime": [
|
||||
"../node_modules/nitropack/runtime"
|
||||
],
|
||||
"nitropack": [
|
||||
"../node_modules/nitropack"
|
||||
],
|
||||
"defu": [
|
||||
"../node_modules/defu"
|
||||
],
|
||||
"h3": [
|
||||
"../node_modules/h3"
|
||||
],
|
||||
"consola": [
|
||||
"../node_modules/consola"
|
||||
],
|
||||
"ofetch": [
|
||||
"../node_modules/ofetch"
|
||||
],
|
||||
"@unhead/vue": [
|
||||
"../node_modules/@unhead/vue"
|
||||
],
|
||||
"@nuxt/devtools": [
|
||||
"../node_modules/@nuxt/devtools"
|
||||
],
|
||||
"@vue/runtime-core": [
|
||||
"../node_modules/@vue/runtime-core"
|
||||
],
|
||||
"@vue/compiler-sfc": [
|
||||
"../node_modules/@vue/compiler-sfc"
|
||||
],
|
||||
"vue-router": [
|
||||
"../node_modules/vue-router"
|
||||
],
|
||||
"vue-router/auto-routes": [
|
||||
"../node_modules/vue-router/vue-router-auto-routes"
|
||||
],
|
||||
"unplugin-vue-router/client": [
|
||||
"../node_modules/unplugin-vue-router/client"
|
||||
],
|
||||
"@nuxt/schema": [
|
||||
"../node_modules/@nuxt/schema"
|
||||
],
|
||||
"nuxt": [
|
||||
"../node_modules/nuxt"
|
||||
],
|
||||
"vite/client": [
|
||||
"../node_modules/vite/client"
|
||||
],
|
||||
"~": [
|
||||
".."
|
||||
],
|
||||
"~/*": [
|
||||
"../*"
|
||||
],
|
||||
"@": [
|
||||
".."
|
||||
],
|
||||
"@/*": [
|
||||
"../*"
|
||||
],
|
||||
"~~": [
|
||||
".."
|
||||
],
|
||||
"~~/*": [
|
||||
"../*"
|
||||
],
|
||||
"@@": [
|
||||
".."
|
||||
],
|
||||
"@@/*": [
|
||||
"../*"
|
||||
],
|
||||
"#shared": [
|
||||
"../shared"
|
||||
],
|
||||
"assets": [
|
||||
"../assets"
|
||||
],
|
||||
"assets/*": [
|
||||
"../assets/*"
|
||||
],
|
||||
"public": [
|
||||
"../public"
|
||||
],
|
||||
"public/*": [
|
||||
"../public/*"
|
||||
],
|
||||
"#app": [
|
||||
"../node_modules/nuxt/dist/app"
|
||||
],
|
||||
"#app/*": [
|
||||
"../node_modules/nuxt/dist/app/*"
|
||||
],
|
||||
"vue-demi": [
|
||||
"../node_modules/nuxt/dist/app/compat/vue-demi"
|
||||
],
|
||||
"#image": [
|
||||
"../node_modules/@nuxt/image/dist/runtime"
|
||||
],
|
||||
"#image/*": [
|
||||
"../node_modules/@nuxt/image/dist/runtime/*"
|
||||
],
|
||||
"pinia": [
|
||||
"../node_modules/pinia/dist/pinia"
|
||||
],
|
||||
"#vue-router": [
|
||||
"../node_modules/vue-router"
|
||||
],
|
||||
"#unhead/composables": [
|
||||
"../node_modules/nuxt/dist/head/runtime/composables/v3"
|
||||
],
|
||||
"#imports": [
|
||||
"./imports"
|
||||
],
|
||||
"#app-manifest": [
|
||||
"./manifest/meta/76826e1b-f3fe-4cae-9f12-dbe86d416aaa"
|
||||
],
|
||||
"#components": [
|
||||
"./components"
|
||||
],
|
||||
"#build": [
|
||||
"."
|
||||
],
|
||||
"#build/*": [
|
||||
"./*"
|
||||
]
|
||||
},
|
||||
"esModuleInterop": true,
|
||||
"skipLibCheck": true,
|
||||
"target": "ESNext",
|
||||
"allowJs": true,
|
||||
"resolveJsonModule": true,
|
||||
"moduleDetection": "force",
|
||||
"isolatedModules": true,
|
||||
"verbatimModuleSyntax": true,
|
||||
"strict": true,
|
||||
"noUncheckedIndexedAccess": false,
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"noImplicitOverride": true,
|
||||
"module": "preserve",
|
||||
"noEmit": true,
|
||||
"lib": [
|
||||
"ESNext",
|
||||
"dom",
|
||||
"dom.iterable",
|
||||
"webworker"
|
||||
],
|
||||
"jsx": "preserve",
|
||||
"jsxImportSource": "vue",
|
||||
"types": [],
|
||||
"moduleResolution": "Bundler",
|
||||
"useDefineForClassFields": true,
|
||||
"noImplicitThis": true,
|
||||
"allowSyntheticDefaultImports": true
|
||||
},
|
||||
"include": [
|
||||
"../**/*",
|
||||
"../.config/nuxt.*",
|
||||
"./nuxt.d.ts",
|
||||
"../node_modules/@nuxt/eslint/runtime",
|
||||
"../node_modules/@nuxt/eslint/dist/runtime",
|
||||
"../node_modules/@nuxt/icon/runtime",
|
||||
"../node_modules/@nuxt/icon/dist/runtime",
|
||||
"../node_modules/@nuxt/image/runtime",
|
||||
"../node_modules/@nuxt/image/dist/runtime",
|
||||
"../node_modules/@pinia/nuxt/runtime",
|
||||
"../node_modules/@pinia/nuxt/dist/runtime",
|
||||
"../node_modules/@nuxtjs/tailwindcss/runtime",
|
||||
"../node_modules/@nuxtjs/tailwindcss/dist/runtime",
|
||||
"../node_modules/@nuxt/devtools/runtime",
|
||||
"../node_modules/@nuxt/devtools/dist/runtime",
|
||||
"../node_modules/@nuxt/telemetry/runtime",
|
||||
"../node_modules/@nuxt/telemetry/dist/runtime",
|
||||
".."
|
||||
],
|
||||
"exclude": [
|
||||
"../dist",
|
||||
"../.data",
|
||||
"../node_modules",
|
||||
"../node_modules/nuxt/node_modules",
|
||||
"../node_modules/@nuxt/eslint/node_modules",
|
||||
"../node_modules/@nuxt/icon/node_modules",
|
||||
"../node_modules/@nuxt/image/node_modules",
|
||||
"../node_modules/@pinia/nuxt/node_modules",
|
||||
"../node_modules/@nuxtjs/tailwindcss/node_modules",
|
||||
"../node_modules/@nuxt/devtools/node_modules",
|
||||
"../node_modules/@nuxt/telemetry/node_modules",
|
||||
"../node_modules/@nuxt/eslint/runtime/server",
|
||||
"../node_modules/@nuxt/eslint/dist/runtime/server",
|
||||
"../node_modules/@nuxt/icon/runtime/server",
|
||||
"../node_modules/@nuxt/icon/dist/runtime/server",
|
||||
"../node_modules/@nuxt/image/runtime/server",
|
||||
"../node_modules/@nuxt/image/dist/runtime/server",
|
||||
"../node_modules/@pinia/nuxt/runtime/server",
|
||||
"../node_modules/@pinia/nuxt/dist/runtime/server",
|
||||
"../node_modules/@nuxtjs/tailwindcss/runtime/server",
|
||||
"../node_modules/@nuxtjs/tailwindcss/dist/runtime/server",
|
||||
"../node_modules/@nuxt/devtools/runtime/server",
|
||||
"../node_modules/@nuxt/devtools/dist/runtime/server",
|
||||
"../node_modules/@nuxt/telemetry/runtime/server",
|
||||
"../node_modules/@nuxt/telemetry/dist/runtime/server"
|
||||
]
|
||||
}
|
@ -1,153 +0,0 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"strict": true,
|
||||
"noEmit": true,
|
||||
"target": "ESNext",
|
||||
"module": "ESNext",
|
||||
"moduleResolution": "Bundler",
|
||||
"allowJs": true,
|
||||
"resolveJsonModule": true,
|
||||
"jsx": "preserve",
|
||||
"allowSyntheticDefaultImports": true,
|
||||
"jsxFactory": "h",
|
||||
"jsxFragmentFactory": "Fragment",
|
||||
"paths": {
|
||||
"#imports": [
|
||||
"./types/nitro-imports"
|
||||
],
|
||||
"~/*": [
|
||||
"../*"
|
||||
],
|
||||
"@/*": [
|
||||
"../*"
|
||||
],
|
||||
"~~/*": [
|
||||
"../*"
|
||||
],
|
||||
"@@/*": [
|
||||
"../*"
|
||||
],
|
||||
"nitropack/types": [
|
||||
"../node_modules/nitropack/types"
|
||||
],
|
||||
"nitropack/runtime": [
|
||||
"../node_modules/nitropack/runtime"
|
||||
],
|
||||
"nitropack": [
|
||||
"../node_modules/nitropack"
|
||||
],
|
||||
"defu": [
|
||||
"../node_modules/defu"
|
||||
],
|
||||
"h3": [
|
||||
"../node_modules/h3"
|
||||
],
|
||||
"consola": [
|
||||
"../node_modules/consola"
|
||||
],
|
||||
"ofetch": [
|
||||
"../node_modules/ofetch"
|
||||
],
|
||||
"@unhead/vue": [
|
||||
"../node_modules/@unhead/vue"
|
||||
],
|
||||
"@nuxt/devtools": [
|
||||
"../node_modules/@nuxt/devtools"
|
||||
],
|
||||
"@vue/runtime-core": [
|
||||
"../node_modules/@vue/runtime-core"
|
||||
],
|
||||
"@vue/compiler-sfc": [
|
||||
"../node_modules/@vue/compiler-sfc"
|
||||
],
|
||||
"vue-router": [
|
||||
"../node_modules/vue-router"
|
||||
],
|
||||
"vue-router/auto-routes": [
|
||||
"../node_modules/vue-router/vue-router-auto-routes"
|
||||
],
|
||||
"unplugin-vue-router/client": [
|
||||
"../node_modules/unplugin-vue-router/client"
|
||||
],
|
||||
"@nuxt/schema": [
|
||||
"../node_modules/@nuxt/schema"
|
||||
],
|
||||
"nuxt": [
|
||||
"../node_modules/nuxt"
|
||||
],
|
||||
"vite/client": [
|
||||
"../node_modules/vite/client"
|
||||
],
|
||||
"#shared": [
|
||||
"../shared"
|
||||
],
|
||||
"assets": [
|
||||
"../assets"
|
||||
],
|
||||
"assets/*": [
|
||||
"../assets/*"
|
||||
],
|
||||
"public": [
|
||||
"../public"
|
||||
],
|
||||
"public/*": [
|
||||
"../public/*"
|
||||
],
|
||||
"#build": [
|
||||
"./"
|
||||
],
|
||||
"#build/*": [
|
||||
"./*"
|
||||
],
|
||||
"#internal/nuxt/paths": [
|
||||
"../node_modules/nuxt/dist/core/runtime/nitro/utils/paths"
|
||||
],
|
||||
"#image": [
|
||||
"../node_modules/@nuxt/image/dist/runtime"
|
||||
],
|
||||
"#image/*": [
|
||||
"../node_modules/@nuxt/image/dist/runtime/*"
|
||||
],
|
||||
"pinia": [
|
||||
"../node_modules/pinia/dist/pinia"
|
||||
],
|
||||
"#unhead/composables": [
|
||||
"../node_modules/nuxt/dist/head/runtime/composables/v3"
|
||||
],
|
||||
"#nuxt-icon-server-bundle": [
|
||||
"./nuxt-icon-server-bundle"
|
||||
]
|
||||
},
|
||||
"lib": [
|
||||
"esnext",
|
||||
"webworker",
|
||||
"dom.iterable"
|
||||
]
|
||||
},
|
||||
"include": [
|
||||
"./types/nitro-nuxt.d.ts",
|
||||
"../node_modules/@nuxt/eslint/runtime/server",
|
||||
"../node_modules/@nuxt/icon/runtime/server",
|
||||
"../node_modules/@nuxt/image/runtime/server",
|
||||
"../node_modules/@pinia/nuxt/runtime/server",
|
||||
"../node_modules/@nuxtjs/tailwindcss/runtime/server",
|
||||
"../node_modules/@nuxt/devtools/runtime/server",
|
||||
"../node_modules/@nuxt/telemetry/runtime/server",
|
||||
"./types/nitro.d.ts",
|
||||
"../**/*",
|
||||
"../server/**/*"
|
||||
],
|
||||
"exclude": [
|
||||
"../node_modules",
|
||||
"../node_modules/nuxt/node_modules",
|
||||
"../node_modules/@nuxt/eslint/node_modules",
|
||||
"../node_modules/@nuxt/icon/node_modules",
|
||||
"../node_modules/@nuxt/image/node_modules",
|
||||
"../node_modules/@pinia/nuxt/node_modules",
|
||||
"../node_modules/@nuxtjs/tailwindcss/node_modules",
|
||||
"../node_modules/@nuxt/devtools/node_modules",
|
||||
"../node_modules/@nuxt/telemetry/node_modules",
|
||||
"../dist"
|
||||
]
|
||||
}
|
7
.nuxt/types/app-defaults.d.ts
vendored
@ -1,7 +0,0 @@
|
||||
|
||||
declare module 'nuxt/app/defaults' {
|
||||
type DefaultAsyncDataErrorValue = null
|
||||
type DefaultAsyncDataValue = null
|
||||
type DefaultErrorValue = null
|
||||
type DedupeOption = boolean | 'cancel' | 'defer'
|
||||
}
|
225
.nuxt/types/app.config.d.ts
vendored
@ -1,225 +0,0 @@
|
||||
|
||||
import type { CustomAppConfig } from 'nuxt/schema'
|
||||
import type { Defu } from 'defu'
|
||||
|
||||
|
||||
declare const inlineConfig = {
|
||||
"nuxt": {},
|
||||
"icon": {
|
||||
"provider": "server",
|
||||
"class": "",
|
||||
"aliases": {},
|
||||
"iconifyApiEndpoint": "https://api.iconify.design",
|
||||
"localApiEndpoint": "/api/_nuxt_icon",
|
||||
"fallbackToApi": true,
|
||||
"cssSelectorPrefix": "i-",
|
||||
"cssWherePseudo": true,
|
||||
"mode": "css",
|
||||
"attrs": {
|
||||
"aria-hidden": true
|
||||
},
|
||||
"collections": [
|
||||
"academicons",
|
||||
"akar-icons",
|
||||
"ant-design",
|
||||
"arcticons",
|
||||
"basil",
|
||||
"bi",
|
||||
"bitcoin-icons",
|
||||
"bpmn",
|
||||
"brandico",
|
||||
"bx",
|
||||
"bxl",
|
||||
"bxs",
|
||||
"bytesize",
|
||||
"carbon",
|
||||
"catppuccin",
|
||||
"cbi",
|
||||
"charm",
|
||||
"ci",
|
||||
"cib",
|
||||
"cif",
|
||||
"cil",
|
||||
"circle-flags",
|
||||
"circum",
|
||||
"clarity",
|
||||
"codicon",
|
||||
"covid",
|
||||
"cryptocurrency",
|
||||
"cryptocurrency-color",
|
||||
"dashicons",
|
||||
"devicon",
|
||||
"devicon-plain",
|
||||
"ei",
|
||||
"el",
|
||||
"emojione",
|
||||
"emojione-monotone",
|
||||
"emojione-v1",
|
||||
"entypo",
|
||||
"entypo-social",
|
||||
"eos-icons",
|
||||
"ep",
|
||||
"et",
|
||||
"eva",
|
||||
"f7",
|
||||
"fa",
|
||||
"fa-brands",
|
||||
"fa-regular",
|
||||
"fa-solid",
|
||||
"fa6-brands",
|
||||
"fa6-regular",
|
||||
"fa6-solid",
|
||||
"fad",
|
||||
"fe",
|
||||
"feather",
|
||||
"file-icons",
|
||||
"flag",
|
||||
"flagpack",
|
||||
"flat-color-icons",
|
||||
"flat-ui",
|
||||
"flowbite",
|
||||
"fluent",
|
||||
"fluent-emoji",
|
||||
"fluent-emoji-flat",
|
||||
"fluent-emoji-high-contrast",
|
||||
"fluent-mdl2",
|
||||
"fontelico",
|
||||
"fontisto",
|
||||
"formkit",
|
||||
"foundation",
|
||||
"fxemoji",
|
||||
"gala",
|
||||
"game-icons",
|
||||
"geo",
|
||||
"gg",
|
||||
"gis",
|
||||
"gravity-ui",
|
||||
"gridicons",
|
||||
"grommet-icons",
|
||||
"guidance",
|
||||
"healthicons",
|
||||
"heroicons",
|
||||
"heroicons-outline",
|
||||
"heroicons-solid",
|
||||
"hugeicons",
|
||||
"humbleicons",
|
||||
"ic",
|
||||
"icomoon-free",
|
||||
"icon-park",
|
||||
"icon-park-outline",
|
||||
"icon-park-solid",
|
||||
"icon-park-twotone",
|
||||
"iconamoon",
|
||||
"iconoir",
|
||||
"icons8",
|
||||
"il",
|
||||
"ion",
|
||||
"iwwa",
|
||||
"jam",
|
||||
"la",
|
||||
"lets-icons",
|
||||
"line-md",
|
||||
"logos",
|
||||
"ls",
|
||||
"lucide",
|
||||
"lucide-lab",
|
||||
"mage",
|
||||
"majesticons",
|
||||
"maki",
|
||||
"map",
|
||||
"marketeq",
|
||||
"material-symbols",
|
||||
"material-symbols-light",
|
||||
"mdi",
|
||||
"mdi-light",
|
||||
"medical-icon",
|
||||
"memory",
|
||||
"meteocons",
|
||||
"mi",
|
||||
"mingcute",
|
||||
"mono-icons",
|
||||
"mynaui",
|
||||
"nimbus",
|
||||
"nonicons",
|
||||
"noto",
|
||||
"noto-v1",
|
||||
"octicon",
|
||||
"oi",
|
||||
"ooui",
|
||||
"openmoji",
|
||||
"oui",
|
||||
"pajamas",
|
||||
"pepicons",
|
||||
"pepicons-pencil",
|
||||
"pepicons-pop",
|
||||
"pepicons-print",
|
||||
"ph",
|
||||
"pixelarticons",
|
||||
"prime",
|
||||
"ps",
|
||||
"quill",
|
||||
"radix-icons",
|
||||
"raphael",
|
||||
"ri",
|
||||
"rivet-icons",
|
||||
"si-glyph",
|
||||
"simple-icons",
|
||||
"simple-line-icons",
|
||||
"skill-icons",
|
||||
"solar",
|
||||
"streamline",
|
||||
"streamline-emojis",
|
||||
"subway",
|
||||
"svg-spinners",
|
||||
"system-uicons",
|
||||
"tabler",
|
||||
"tdesign",
|
||||
"teenyicons",
|
||||
"token",
|
||||
"token-branded",
|
||||
"topcoat",
|
||||
"twemoji",
|
||||
"typcn",
|
||||
"uil",
|
||||
"uim",
|
||||
"uis",
|
||||
"uit",
|
||||
"uiw",
|
||||
"unjs",
|
||||
"vaadin",
|
||||
"vs",
|
||||
"vscode-icons",
|
||||
"websymbol",
|
||||
"weui",
|
||||
"whh",
|
||||
"wi",
|
||||
"wpf",
|
||||
"zmdi",
|
||||
"zondicons"
|
||||
],
|
||||
"fetchTimeout": 1500
|
||||
}
|
||||
}
|
||||
type ResolvedAppConfig = Defu<typeof inlineConfig, []>
|
||||
type IsAny<T> = 0 extends 1 & T ? true : false
|
||||
|
||||
type MergedAppConfig<Resolved extends Record<string, unknown>, Custom extends Record<string, unknown>> = {
|
||||
[K in keyof (Resolved & Custom)]: K extends keyof Custom
|
||||
? unknown extends Custom[K]
|
||||
? Resolved[K]
|
||||
: IsAny<Custom[K]> extends true
|
||||
? Resolved[K]
|
||||
: Custom[K] extends Record<string, any>
|
||||
? Resolved[K] extends Record<string, any>
|
||||
? MergedAppConfig<Resolved[K], Custom[K]>
|
||||
: Exclude<Custom[K], undefined>
|
||||
: Exclude<Custom[K], undefined>
|
||||
: Resolved[K]
|
||||
}
|
||||
|
||||
declare module 'nuxt/schema' {
|
||||
interface AppConfig extends MergedAppConfig<ResolvedAppConfig, CustomAppConfig> { }
|
||||
}
|
||||
declare module '@nuxt/schema' {
|
||||
interface AppConfig extends MergedAppConfig<ResolvedAppConfig, CustomAppConfig> { }
|
||||
}
|
23
.nuxt/types/build.d.ts
vendored
@ -1,23 +0,0 @@
|
||||
declare module "#build/app-component.mjs";
|
||||
declare module "#build/nitro.client.mjs";
|
||||
declare module "#build/plugins.client.mjs";
|
||||
declare module "#build/css.mjs";
|
||||
declare module "#build/fetch.mjs";
|
||||
declare module "#build/error-component.mjs";
|
||||
declare module "#build/global-polyfills.mjs";
|
||||
declare module "#build/layouts.mjs";
|
||||
declare module "#build/middleware.mjs";
|
||||
declare module "#build/nuxt.config.mjs";
|
||||
declare module "#build/paths.mjs";
|
||||
declare module "#build/root-component.mjs";
|
||||
declare module "#build/plugins.server.mjs";
|
||||
declare module "#build/test-component-wrapper.mjs";
|
||||
declare module "#build/image-options.mjs";
|
||||
declare module "#build/routes.mjs";
|
||||
declare module "#build/pages.mjs";
|
||||
declare module "#build/router.options.mjs";
|
||||
declare module "#build/unhead-options.mjs";
|
||||
declare module "#build/unhead.config.mjs";
|
||||
declare module "#build/components.plugin.mjs";
|
||||
declare module "#build/component-names.mjs";
|
||||
declare module "#build/components.islands.mjs";
|
1
.nuxt/types/builder-env.d.ts
vendored
@ -1 +0,0 @@
|
||||
import "vite/client";
|
364
.nuxt/types/imports.d.ts
vendored
@ -1,364 +0,0 @@
|
||||
// Generated by auto imports
|
||||
export {}
|
||||
declare global {
|
||||
const abortNavigation: typeof import('../../node_modules/nuxt/dist/app/composables/router')['abortNavigation']
|
||||
const acceptHMRUpdate: typeof import('../../node_modules/@pinia/nuxt/dist/runtime/composables')['acceptHMRUpdate']
|
||||
const addRouteMiddleware: typeof import('../../node_modules/nuxt/dist/app/composables/router')['addRouteMiddleware']
|
||||
const callOnce: typeof import('../../node_modules/nuxt/dist/app/composables/once')['callOnce']
|
||||
const cancelIdleCallback: typeof import('../../node_modules/nuxt/dist/app/compat/idle-callback')['cancelIdleCallback']
|
||||
const clearError: typeof import('../../node_modules/nuxt/dist/app/composables/error')['clearError']
|
||||
const clearNuxtData: typeof import('../../node_modules/nuxt/dist/app/composables/asyncData')['clearNuxtData']
|
||||
const clearNuxtState: typeof import('../../node_modules/nuxt/dist/app/composables/state')['clearNuxtState']
|
||||
const computed: typeof import('vue')['computed']
|
||||
const createError: typeof import('../../node_modules/nuxt/dist/app/composables/error')['createError']
|
||||
const customRef: typeof import('vue')['customRef']
|
||||
const defineAppConfig: typeof import('../../node_modules/nuxt/dist/app/nuxt')['defineAppConfig']
|
||||
const defineAsyncComponent: typeof import('vue')['defineAsyncComponent']
|
||||
const defineComponent: typeof import('vue')['defineComponent']
|
||||
const defineNuxtComponent: typeof import('../../node_modules/nuxt/dist/app/composables/component')['defineNuxtComponent']
|
||||
const defineNuxtLink: typeof import('../../node_modules/nuxt/dist/app/components/nuxt-link')['defineNuxtLink']
|
||||
const defineNuxtPlugin: typeof import('../../node_modules/nuxt/dist/app/nuxt')['defineNuxtPlugin']
|
||||
const defineNuxtRouteMiddleware: typeof import('../../node_modules/nuxt/dist/app/composables/router')['defineNuxtRouteMiddleware']
|
||||
const definePageMeta: typeof import('../../node_modules/nuxt/dist/pages/runtime/composables')['definePageMeta']
|
||||
const definePayloadPlugin: typeof import('../../node_modules/nuxt/dist/app/nuxt')['definePayloadPlugin']
|
||||
const definePayloadReducer: typeof import('../../node_modules/nuxt/dist/app/composables/payload')['definePayloadReducer']
|
||||
const definePayloadReviver: typeof import('../../node_modules/nuxt/dist/app/composables/payload')['definePayloadReviver']
|
||||
const defineStore: typeof import('../../node_modules/@pinia/nuxt/dist/runtime/composables')['defineStore']
|
||||
const effect: typeof import('vue')['effect']
|
||||
const effectScope: typeof import('vue')['effectScope']
|
||||
const getAppManifest: typeof import('../../node_modules/nuxt/dist/app/composables/manifest')['getAppManifest']
|
||||
const getCurrentInstance: typeof import('vue')['getCurrentInstance']
|
||||
const getCurrentScope: typeof import('vue')['getCurrentScope']
|
||||
const getRouteRules: typeof import('../../node_modules/nuxt/dist/app/composables/manifest')['getRouteRules']
|
||||
const h: typeof import('vue')['h']
|
||||
const hasInjectionContext: typeof import('vue')['hasInjectionContext']
|
||||
const inject: typeof import('vue')['inject']
|
||||
const injectHead: typeof import('../../node_modules/nuxt/dist/app/composables/head')['injectHead']
|
||||
const isNuxtError: typeof import('../../node_modules/nuxt/dist/app/composables/error')['isNuxtError']
|
||||
const isPrerendered: typeof import('../../node_modules/nuxt/dist/app/composables/payload')['isPrerendered']
|
||||
const isProxy: typeof import('vue')['isProxy']
|
||||
const isReactive: typeof import('vue')['isReactive']
|
||||
const isReadonly: typeof import('vue')['isReadonly']
|
||||
const isRef: typeof import('vue')['isRef']
|
||||
const isShallow: typeof import('vue')['isShallow']
|
||||
const isVue2: typeof import('../../node_modules/nuxt/dist/app/compat/vue-demi')['isVue2']
|
||||
const isVue3: typeof import('../../node_modules/nuxt/dist/app/compat/vue-demi')['isVue3']
|
||||
const loadPayload: typeof import('../../node_modules/nuxt/dist/app/composables/payload')['loadPayload']
|
||||
const markRaw: typeof import('vue')['markRaw']
|
||||
const mergeModels: typeof import('vue')['mergeModels']
|
||||
const navigateTo: typeof import('../../node_modules/nuxt/dist/app/composables/router')['navigateTo']
|
||||
const nextTick: typeof import('vue')['nextTick']
|
||||
const onActivated: typeof import('vue')['onActivated']
|
||||
const onBeforeMount: typeof import('vue')['onBeforeMount']
|
||||
const onBeforeRouteLeave: typeof import('../../node_modules/vue-router')['onBeforeRouteLeave']
|
||||
const onBeforeRouteUpdate: typeof import('../../node_modules/vue-router')['onBeforeRouteUpdate']
|
||||
const onBeforeUnmount: typeof import('vue')['onBeforeUnmount']
|
||||
const onBeforeUpdate: typeof import('vue')['onBeforeUpdate']
|
||||
const onDeactivated: typeof import('vue')['onDeactivated']
|
||||
const onErrorCaptured: typeof import('vue')['onErrorCaptured']
|
||||
const onMounted: typeof import('vue')['onMounted']
|
||||
const onNuxtReady: typeof import('../../node_modules/nuxt/dist/app/composables/ready')['onNuxtReady']
|
||||
const onPrehydrate: typeof import('../../node_modules/nuxt/dist/app/composables/ssr')['onPrehydrate']
|
||||
const onRenderTracked: typeof import('vue')['onRenderTracked']
|
||||
const onRenderTriggered: typeof import('vue')['onRenderTriggered']
|
||||
const onScopeDispose: typeof import('vue')['onScopeDispose']
|
||||
const onServerPrefetch: typeof import('vue')['onServerPrefetch']
|
||||
const onUnmounted: typeof import('vue')['onUnmounted']
|
||||
const onUpdated: typeof import('vue')['onUpdated']
|
||||
const prefetchComponents: typeof import('../../node_modules/nuxt/dist/app/composables/preload')['prefetchComponents']
|
||||
const preloadComponents: typeof import('../../node_modules/nuxt/dist/app/composables/preload')['preloadComponents']
|
||||
const preloadPayload: typeof import('../../node_modules/nuxt/dist/app/composables/payload')['preloadPayload']
|
||||
const preloadRouteComponents: typeof import('../../node_modules/nuxt/dist/app/composables/preload')['preloadRouteComponents']
|
||||
const prerenderRoutes: typeof import('../../node_modules/nuxt/dist/app/composables/ssr')['prerenderRoutes']
|
||||
const provide: typeof import('vue')['provide']
|
||||
const proxyRefs: typeof import('vue')['proxyRefs']
|
||||
const reactive: typeof import('vue')['reactive']
|
||||
const readonly: typeof import('vue')['readonly']
|
||||
const ref: typeof import('vue')['ref']
|
||||
const refreshCookie: typeof import('../../node_modules/nuxt/dist/app/composables/cookie')['refreshCookie']
|
||||
const refreshNuxtData: typeof import('../../node_modules/nuxt/dist/app/composables/asyncData')['refreshNuxtData']
|
||||
const reloadNuxtApp: typeof import('../../node_modules/nuxt/dist/app/composables/chunk')['reloadNuxtApp']
|
||||
const requestIdleCallback: typeof import('../../node_modules/nuxt/dist/app/compat/idle-callback')['requestIdleCallback']
|
||||
const resolveComponent: typeof import('vue')['resolveComponent']
|
||||
const setInterval: typeof import('../../node_modules/nuxt/dist/app/compat/interval')['setInterval']
|
||||
const setPageLayout: typeof import('../../node_modules/nuxt/dist/app/composables/router')['setPageLayout']
|
||||
const setResponseStatus: typeof import('../../node_modules/nuxt/dist/app/composables/ssr')['setResponseStatus']
|
||||
const shallowReactive: typeof import('vue')['shallowReactive']
|
||||
const shallowReadonly: typeof import('vue')['shallowReadonly']
|
||||
const shallowRef: typeof import('vue')['shallowRef']
|
||||
const showError: typeof import('../../node_modules/nuxt/dist/app/composables/error')['showError']
|
||||
const storeToRefs: typeof import('../../node_modules/@pinia/nuxt/dist/runtime/composables')['storeToRefs']
|
||||
const toRaw: typeof import('vue')['toRaw']
|
||||
const toRef: typeof import('vue')['toRef']
|
||||
const toRefs: typeof import('vue')['toRefs']
|
||||
const toValue: typeof import('vue')['toValue']
|
||||
const triggerRef: typeof import('vue')['triggerRef']
|
||||
const tryUseNuxtApp: typeof import('../../node_modules/nuxt/dist/app/nuxt')['tryUseNuxtApp']
|
||||
const unref: typeof import('vue')['unref']
|
||||
const updateAppConfig: typeof import('../../node_modules/nuxt/dist/app/config')['updateAppConfig']
|
||||
const useAppConfig: typeof import('../../node_modules/nuxt/dist/app/config')['useAppConfig']
|
||||
const useAsyncData: typeof import('../../node_modules/nuxt/dist/app/composables/asyncData')['useAsyncData']
|
||||
const useAttrs: typeof import('vue')['useAttrs']
|
||||
const useCookie: typeof import('../../node_modules/nuxt/dist/app/composables/cookie')['useCookie']
|
||||
const useCssModule: typeof import('vue')['useCssModule']
|
||||
const useCssVars: typeof import('vue')['useCssVars']
|
||||
const useError: typeof import('../../node_modules/nuxt/dist/app/composables/error')['useError']
|
||||
const useFetch: typeof import('../../node_modules/nuxt/dist/app/composables/fetch')['useFetch']
|
||||
const useHead: typeof import('../../node_modules/nuxt/dist/app/composables/head')['useHead']
|
||||
const useHeadSafe: typeof import('../../node_modules/nuxt/dist/app/composables/head')['useHeadSafe']
|
||||
const useHydration: typeof import('../../node_modules/nuxt/dist/app/composables/hydrate')['useHydration']
|
||||
const useId: typeof import('vue')['useId']
|
||||
const useImage: typeof import('../../node_modules/@nuxt/image/dist/runtime/composables')['useImage']
|
||||
const useLazyAsyncData: typeof import('../../node_modules/nuxt/dist/app/composables/asyncData')['useLazyAsyncData']
|
||||
const useLazyFetch: typeof import('../../node_modules/nuxt/dist/app/composables/fetch')['useLazyFetch']
|
||||
const useLink: typeof import('../../node_modules/vue-router')['useLink']
|
||||
const useLoadingIndicator: typeof import('../../node_modules/nuxt/dist/app/composables/loading-indicator')['useLoadingIndicator']
|
||||
const useModel: typeof import('vue')['useModel']
|
||||
const useNuxtApp: typeof import('../../node_modules/nuxt/dist/app/nuxt')['useNuxtApp']
|
||||
const useNuxtData: typeof import('../../node_modules/nuxt/dist/app/composables/asyncData')['useNuxtData']
|
||||
const usePinia: typeof import('../../node_modules/@pinia/nuxt/dist/runtime/composables')['usePinia']
|
||||
const usePreviewMode: typeof import('../../node_modules/nuxt/dist/app/composables/preview')['usePreviewMode']
|
||||
const useRequestEvent: typeof import('../../node_modules/nuxt/dist/app/composables/ssr')['useRequestEvent']
|
||||
const useRequestFetch: typeof import('../../node_modules/nuxt/dist/app/composables/ssr')['useRequestFetch']
|
||||
const useRequestHeader: typeof import('../../node_modules/nuxt/dist/app/composables/ssr')['useRequestHeader']
|
||||
const useRequestHeaders: typeof import('../../node_modules/nuxt/dist/app/composables/ssr')['useRequestHeaders']
|
||||
const useRequestURL: typeof import('../../node_modules/nuxt/dist/app/composables/url')['useRequestURL']
|
||||
const useResponseHeader: typeof import('../../node_modules/nuxt/dist/app/composables/ssr')['useResponseHeader']
|
||||
const useRoute: typeof import('../../node_modules/nuxt/dist/app/composables/router')['useRoute']
|
||||
const useRouteAnnouncer: typeof import('../../node_modules/nuxt/dist/app/composables/route-announcer')['useRouteAnnouncer']
|
||||
const useRouter: typeof import('../../node_modules/nuxt/dist/app/composables/router')['useRouter']
|
||||
const useRuntimeConfig: typeof import('../../node_modules/nuxt/dist/app/nuxt')['useRuntimeConfig']
|
||||
const useRuntimeHook: typeof import('../../node_modules/nuxt/dist/app/composables/runtime-hook')['useRuntimeHook']
|
||||
const useScript: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScript']
|
||||
const useScriptClarity: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptClarity']
|
||||
const useScriptCloudflareWebAnalytics: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptCloudflareWebAnalytics']
|
||||
const useScriptCrisp: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptCrisp']
|
||||
const useScriptEventPage: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptEventPage']
|
||||
const useScriptFathomAnalytics: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptFathomAnalytics']
|
||||
const useScriptGoogleAdsense: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptGoogleAdsense']
|
||||
const useScriptGoogleAnalytics: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptGoogleAnalytics']
|
||||
const useScriptGoogleMaps: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptGoogleMaps']
|
||||
const useScriptGoogleTagManager: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptGoogleTagManager']
|
||||
const useScriptHotjar: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptHotjar']
|
||||
const useScriptIntercom: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptIntercom']
|
||||
const useScriptLemonSqueezy: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptLemonSqueezy']
|
||||
const useScriptMatomoAnalytics: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptMatomoAnalytics']
|
||||
const useScriptMetaPixel: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptMetaPixel']
|
||||
const useScriptNpm: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptNpm']
|
||||
const useScriptPlausibleAnalytics: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptPlausibleAnalytics']
|
||||
const useScriptRybbitAnalytics: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptRybbitAnalytics']
|
||||
const useScriptSegment: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptSegment']
|
||||
const useScriptSnapchatPixel: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptSnapchatPixel']
|
||||
const useScriptStripe: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptStripe']
|
||||
const useScriptTriggerConsent: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptTriggerConsent']
|
||||
const useScriptTriggerElement: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptTriggerElement']
|
||||
const useScriptUmamiAnalytics: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptUmamiAnalytics']
|
||||
const useScriptVimeoPlayer: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptVimeoPlayer']
|
||||
const useScriptXPixel: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptXPixel']
|
||||
const useScriptYouTubePlayer: typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptYouTubePlayer']
|
||||
const useSeoMeta: typeof import('../../node_modules/nuxt/dist/app/composables/head')['useSeoMeta']
|
||||
const useServerHead: typeof import('../../node_modules/nuxt/dist/app/composables/head')['useServerHead']
|
||||
const useServerHeadSafe: typeof import('../../node_modules/nuxt/dist/app/composables/head')['useServerHeadSafe']
|
||||
const useServerSeoMeta: typeof import('../../node_modules/nuxt/dist/app/composables/head')['useServerSeoMeta']
|
||||
const useShadowRoot: typeof import('vue')['useShadowRoot']
|
||||
const useSlots: typeof import('vue')['useSlots']
|
||||
const useState: typeof import('../../node_modules/nuxt/dist/app/composables/state')['useState']
|
||||
const useTemplateRef: typeof import('vue')['useTemplateRef']
|
||||
const useTransitionState: typeof import('vue')['useTransitionState']
|
||||
const watch: typeof import('vue')['watch']
|
||||
const watchEffect: typeof import('vue')['watchEffect']
|
||||
const watchPostEffect: typeof import('vue')['watchPostEffect']
|
||||
const watchSyncEffect: typeof import('vue')['watchSyncEffect']
|
||||
const withCtx: typeof import('vue')['withCtx']
|
||||
const withDirectives: typeof import('vue')['withDirectives']
|
||||
const withKeys: typeof import('vue')['withKeys']
|
||||
const withMemo: typeof import('vue')['withMemo']
|
||||
const withModifiers: typeof import('vue')['withModifiers']
|
||||
const withScopeId: typeof import('vue')['withScopeId']
|
||||
}
|
||||
// for type re-export
|
||||
declare global {
|
||||
// @ts-ignore
|
||||
export type { Component, ComponentPublicInstance, ComputedRef, DirectiveBinding, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, MaybeRef, MaybeRefOrGetter, VNode, WritableComputedRef } from 'vue'
|
||||
import('vue')
|
||||
}
|
||||
// for vue template auto import
|
||||
import { UnwrapRef } from 'vue'
|
||||
declare module 'vue' {
|
||||
interface ComponentCustomProperties {
|
||||
readonly abortNavigation: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/router')['abortNavigation']>
|
||||
readonly acceptHMRUpdate: UnwrapRef<typeof import('../../node_modules/@pinia/nuxt/dist/runtime/composables')['acceptHMRUpdate']>
|
||||
readonly addRouteMiddleware: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/router')['addRouteMiddleware']>
|
||||
readonly callOnce: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/once')['callOnce']>
|
||||
readonly cancelIdleCallback: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/compat/idle-callback')['cancelIdleCallback']>
|
||||
readonly clearError: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/error')['clearError']>
|
||||
readonly clearNuxtData: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/asyncData')['clearNuxtData']>
|
||||
readonly clearNuxtState: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/state')['clearNuxtState']>
|
||||
readonly computed: UnwrapRef<typeof import('vue')['computed']>
|
||||
readonly createError: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/error')['createError']>
|
||||
readonly customRef: UnwrapRef<typeof import('vue')['customRef']>
|
||||
readonly defineAppConfig: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/nuxt')['defineAppConfig']>
|
||||
readonly defineAsyncComponent: UnwrapRef<typeof import('vue')['defineAsyncComponent']>
|
||||
readonly defineComponent: UnwrapRef<typeof import('vue')['defineComponent']>
|
||||
readonly defineNuxtComponent: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/component')['defineNuxtComponent']>
|
||||
readonly defineNuxtLink: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/components/nuxt-link')['defineNuxtLink']>
|
||||
readonly defineNuxtPlugin: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/nuxt')['defineNuxtPlugin']>
|
||||
readonly defineNuxtRouteMiddleware: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/router')['defineNuxtRouteMiddleware']>
|
||||
readonly definePageMeta: UnwrapRef<typeof import('../../node_modules/nuxt/dist/pages/runtime/composables')['definePageMeta']>
|
||||
readonly definePayloadPlugin: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/nuxt')['definePayloadPlugin']>
|
||||
readonly definePayloadReducer: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/payload')['definePayloadReducer']>
|
||||
readonly definePayloadReviver: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/payload')['definePayloadReviver']>
|
||||
readonly defineStore: UnwrapRef<typeof import('../../node_modules/@pinia/nuxt/dist/runtime/composables')['defineStore']>
|
||||
readonly effect: UnwrapRef<typeof import('vue')['effect']>
|
||||
readonly effectScope: UnwrapRef<typeof import('vue')['effectScope']>
|
||||
readonly getAppManifest: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/manifest')['getAppManifest']>
|
||||
readonly getCurrentInstance: UnwrapRef<typeof import('vue')['getCurrentInstance']>
|
||||
readonly getCurrentScope: UnwrapRef<typeof import('vue')['getCurrentScope']>
|
||||
readonly getRouteRules: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/manifest')['getRouteRules']>
|
||||
readonly h: UnwrapRef<typeof import('vue')['h']>
|
||||
readonly hasInjectionContext: UnwrapRef<typeof import('vue')['hasInjectionContext']>
|
||||
readonly inject: UnwrapRef<typeof import('vue')['inject']>
|
||||
readonly injectHead: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/head')['injectHead']>
|
||||
readonly isNuxtError: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/error')['isNuxtError']>
|
||||
readonly isPrerendered: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/payload')['isPrerendered']>
|
||||
readonly isProxy: UnwrapRef<typeof import('vue')['isProxy']>
|
||||
readonly isReactive: UnwrapRef<typeof import('vue')['isReactive']>
|
||||
readonly isReadonly: UnwrapRef<typeof import('vue')['isReadonly']>
|
||||
readonly isRef: UnwrapRef<typeof import('vue')['isRef']>
|
||||
readonly isShallow: UnwrapRef<typeof import('vue')['isShallow']>
|
||||
readonly isVue2: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/compat/vue-demi')['isVue2']>
|
||||
readonly isVue3: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/compat/vue-demi')['isVue3']>
|
||||
readonly loadPayload: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/payload')['loadPayload']>
|
||||
readonly markRaw: UnwrapRef<typeof import('vue')['markRaw']>
|
||||
readonly mergeModels: UnwrapRef<typeof import('vue')['mergeModels']>
|
||||
readonly navigateTo: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/router')['navigateTo']>
|
||||
readonly nextTick: UnwrapRef<typeof import('vue')['nextTick']>
|
||||
readonly onActivated: UnwrapRef<typeof import('vue')['onActivated']>
|
||||
readonly onBeforeMount: UnwrapRef<typeof import('vue')['onBeforeMount']>
|
||||
readonly onBeforeRouteLeave: UnwrapRef<typeof import('../../node_modules/vue-router')['onBeforeRouteLeave']>
|
||||
readonly onBeforeRouteUpdate: UnwrapRef<typeof import('../../node_modules/vue-router')['onBeforeRouteUpdate']>
|
||||
readonly onBeforeUnmount: UnwrapRef<typeof import('vue')['onBeforeUnmount']>
|
||||
readonly onBeforeUpdate: UnwrapRef<typeof import('vue')['onBeforeUpdate']>
|
||||
readonly onDeactivated: UnwrapRef<typeof import('vue')['onDeactivated']>
|
||||
readonly onErrorCaptured: UnwrapRef<typeof import('vue')['onErrorCaptured']>
|
||||
readonly onMounted: UnwrapRef<typeof import('vue')['onMounted']>
|
||||
readonly onNuxtReady: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/ready')['onNuxtReady']>
|
||||
readonly onPrehydrate: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/ssr')['onPrehydrate']>
|
||||
readonly onRenderTracked: UnwrapRef<typeof import('vue')['onRenderTracked']>
|
||||
readonly onRenderTriggered: UnwrapRef<typeof import('vue')['onRenderTriggered']>
|
||||
readonly onScopeDispose: UnwrapRef<typeof import('vue')['onScopeDispose']>
|
||||
readonly onServerPrefetch: UnwrapRef<typeof import('vue')['onServerPrefetch']>
|
||||
readonly onUnmounted: UnwrapRef<typeof import('vue')['onUnmounted']>
|
||||
readonly onUpdated: UnwrapRef<typeof import('vue')['onUpdated']>
|
||||
readonly prefetchComponents: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/preload')['prefetchComponents']>
|
||||
readonly preloadComponents: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/preload')['preloadComponents']>
|
||||
readonly preloadPayload: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/payload')['preloadPayload']>
|
||||
readonly preloadRouteComponents: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/preload')['preloadRouteComponents']>
|
||||
readonly prerenderRoutes: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/ssr')['prerenderRoutes']>
|
||||
readonly provide: UnwrapRef<typeof import('vue')['provide']>
|
||||
readonly proxyRefs: UnwrapRef<typeof import('vue')['proxyRefs']>
|
||||
readonly reactive: UnwrapRef<typeof import('vue')['reactive']>
|
||||
readonly readonly: UnwrapRef<typeof import('vue')['readonly']>
|
||||
readonly ref: UnwrapRef<typeof import('vue')['ref']>
|
||||
readonly refreshCookie: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/cookie')['refreshCookie']>
|
||||
readonly refreshNuxtData: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/asyncData')['refreshNuxtData']>
|
||||
readonly reloadNuxtApp: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/chunk')['reloadNuxtApp']>
|
||||
readonly requestIdleCallback: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/compat/idle-callback')['requestIdleCallback']>
|
||||
readonly resolveComponent: UnwrapRef<typeof import('vue')['resolveComponent']>
|
||||
readonly setInterval: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/compat/interval')['setInterval']>
|
||||
readonly setPageLayout: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/router')['setPageLayout']>
|
||||
readonly setResponseStatus: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/ssr')['setResponseStatus']>
|
||||
readonly shallowReactive: UnwrapRef<typeof import('vue')['shallowReactive']>
|
||||
readonly shallowReadonly: UnwrapRef<typeof import('vue')['shallowReadonly']>
|
||||
readonly shallowRef: UnwrapRef<typeof import('vue')['shallowRef']>
|
||||
readonly showError: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/error')['showError']>
|
||||
readonly storeToRefs: UnwrapRef<typeof import('../../node_modules/@pinia/nuxt/dist/runtime/composables')['storeToRefs']>
|
||||
readonly toRaw: UnwrapRef<typeof import('vue')['toRaw']>
|
||||
readonly toRef: UnwrapRef<typeof import('vue')['toRef']>
|
||||
readonly toRefs: UnwrapRef<typeof import('vue')['toRefs']>
|
||||
readonly toValue: UnwrapRef<typeof import('vue')['toValue']>
|
||||
readonly triggerRef: UnwrapRef<typeof import('vue')['triggerRef']>
|
||||
readonly tryUseNuxtApp: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/nuxt')['tryUseNuxtApp']>
|
||||
readonly unref: UnwrapRef<typeof import('vue')['unref']>
|
||||
readonly updateAppConfig: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/config')['updateAppConfig']>
|
||||
readonly useAppConfig: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/config')['useAppConfig']>
|
||||
readonly useAsyncData: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/asyncData')['useAsyncData']>
|
||||
readonly useAttrs: UnwrapRef<typeof import('vue')['useAttrs']>
|
||||
readonly useCookie: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/cookie')['useCookie']>
|
||||
readonly useCssModule: UnwrapRef<typeof import('vue')['useCssModule']>
|
||||
readonly useCssVars: UnwrapRef<typeof import('vue')['useCssVars']>
|
||||
readonly useError: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/error')['useError']>
|
||||
readonly useFetch: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/fetch')['useFetch']>
|
||||
readonly useHead: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/head')['useHead']>
|
||||
readonly useHeadSafe: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/head')['useHeadSafe']>
|
||||
readonly useHydration: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/hydrate')['useHydration']>
|
||||
readonly useId: UnwrapRef<typeof import('vue')['useId']>
|
||||
readonly useImage: UnwrapRef<typeof import('../../node_modules/@nuxt/image/dist/runtime/composables')['useImage']>
|
||||
readonly useLazyAsyncData: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/asyncData')['useLazyAsyncData']>
|
||||
readonly useLazyFetch: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/fetch')['useLazyFetch']>
|
||||
readonly useLink: UnwrapRef<typeof import('../../node_modules/vue-router')['useLink']>
|
||||
readonly useLoadingIndicator: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/loading-indicator')['useLoadingIndicator']>
|
||||
readonly useModel: UnwrapRef<typeof import('vue')['useModel']>
|
||||
readonly useNuxtApp: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/nuxt')['useNuxtApp']>
|
||||
readonly useNuxtData: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/asyncData')['useNuxtData']>
|
||||
readonly usePinia: UnwrapRef<typeof import('../../node_modules/@pinia/nuxt/dist/runtime/composables')['usePinia']>
|
||||
readonly usePreviewMode: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/preview')['usePreviewMode']>
|
||||
readonly useRequestEvent: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/ssr')['useRequestEvent']>
|
||||
readonly useRequestFetch: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/ssr')['useRequestFetch']>
|
||||
readonly useRequestHeader: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/ssr')['useRequestHeader']>
|
||||
readonly useRequestHeaders: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/ssr')['useRequestHeaders']>
|
||||
readonly useRequestURL: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/url')['useRequestURL']>
|
||||
readonly useResponseHeader: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/ssr')['useResponseHeader']>
|
||||
readonly useRoute: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/router')['useRoute']>
|
||||
readonly useRouteAnnouncer: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/route-announcer')['useRouteAnnouncer']>
|
||||
readonly useRouter: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/router')['useRouter']>
|
||||
readonly useRuntimeConfig: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/nuxt')['useRuntimeConfig']>
|
||||
readonly useRuntimeHook: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/runtime-hook')['useRuntimeHook']>
|
||||
readonly useScript: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScript']>
|
||||
readonly useScriptClarity: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptClarity']>
|
||||
readonly useScriptCloudflareWebAnalytics: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptCloudflareWebAnalytics']>
|
||||
readonly useScriptCrisp: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptCrisp']>
|
||||
readonly useScriptEventPage: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptEventPage']>
|
||||
readonly useScriptFathomAnalytics: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptFathomAnalytics']>
|
||||
readonly useScriptGoogleAdsense: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptGoogleAdsense']>
|
||||
readonly useScriptGoogleAnalytics: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptGoogleAnalytics']>
|
||||
readonly useScriptGoogleMaps: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptGoogleMaps']>
|
||||
readonly useScriptGoogleTagManager: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptGoogleTagManager']>
|
||||
readonly useScriptHotjar: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptHotjar']>
|
||||
readonly useScriptIntercom: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptIntercom']>
|
||||
readonly useScriptLemonSqueezy: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptLemonSqueezy']>
|
||||
readonly useScriptMatomoAnalytics: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptMatomoAnalytics']>
|
||||
readonly useScriptMetaPixel: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptMetaPixel']>
|
||||
readonly useScriptNpm: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptNpm']>
|
||||
readonly useScriptPlausibleAnalytics: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptPlausibleAnalytics']>
|
||||
readonly useScriptRybbitAnalytics: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptRybbitAnalytics']>
|
||||
readonly useScriptSegment: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptSegment']>
|
||||
readonly useScriptSnapchatPixel: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptSnapchatPixel']>
|
||||
readonly useScriptStripe: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptStripe']>
|
||||
readonly useScriptTriggerConsent: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptTriggerConsent']>
|
||||
readonly useScriptTriggerElement: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptTriggerElement']>
|
||||
readonly useScriptUmamiAnalytics: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptUmamiAnalytics']>
|
||||
readonly useScriptVimeoPlayer: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptVimeoPlayer']>
|
||||
readonly useScriptXPixel: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptXPixel']>
|
||||
readonly useScriptYouTubePlayer: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/script-stubs')['useScriptYouTubePlayer']>
|
||||
readonly useSeoMeta: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/head')['useSeoMeta']>
|
||||
readonly useServerHead: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/head')['useServerHead']>
|
||||
readonly useServerHeadSafe: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/head')['useServerHeadSafe']>
|
||||
readonly useServerSeoMeta: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/head')['useServerSeoMeta']>
|
||||
readonly useShadowRoot: UnwrapRef<typeof import('vue')['useShadowRoot']>
|
||||
readonly useSlots: UnwrapRef<typeof import('vue')['useSlots']>
|
||||
readonly useState: UnwrapRef<typeof import('../../node_modules/nuxt/dist/app/composables/state')['useState']>
|
||||
readonly useTemplateRef: UnwrapRef<typeof import('vue')['useTemplateRef']>
|
||||
readonly useTransitionState: UnwrapRef<typeof import('vue')['useTransitionState']>
|
||||
readonly watch: UnwrapRef<typeof import('vue')['watch']>
|
||||
readonly watchEffect: UnwrapRef<typeof import('vue')['watchEffect']>
|
||||
readonly watchPostEffect: UnwrapRef<typeof import('vue')['watchPostEffect']>
|
||||
readonly watchSyncEffect: UnwrapRef<typeof import('vue')['watchSyncEffect']>
|
||||
readonly withCtx: UnwrapRef<typeof import('vue')['withCtx']>
|
||||
readonly withDirectives: UnwrapRef<typeof import('vue')['withDirectives']>
|
||||
readonly withKeys: UnwrapRef<typeof import('vue')['withKeys']>
|
||||
readonly withMemo: UnwrapRef<typeof import('vue')['withMemo']>
|
||||
readonly withModifiers: UnwrapRef<typeof import('vue')['withModifiers']>
|
||||
readonly withScopeId: UnwrapRef<typeof import('vue')['withScopeId']>
|
||||
}
|
||||
}
|
7
.nuxt/types/layouts.d.ts
vendored
@ -1,7 +0,0 @@
|
||||
import type { ComputedRef, MaybeRef } from 'vue'
|
||||
export type LayoutKey = "ui-footer" | "ui-footer-data-footer-navigation-data" | "ui-footer-data" | "ui-footer-data-ref-litres-data" | "ui-header" | "ui-header-data-header-navigation-data" | "ui-header-data" | "ui-main" | "default"
|
||||
declare module 'nuxt/app' {
|
||||
interface PageMeta {
|
||||
layout?: MaybeRef<LayoutKey | false> | ComputedRef<LayoutKey | false>
|
||||
}
|
||||
}
|
7
.nuxt/types/middleware.d.ts
vendored
@ -1,7 +0,0 @@
|
||||
import type { NavigationGuard } from 'vue-router'
|
||||
export type MiddlewareKey = never
|
||||
declare module 'nuxt/app' {
|
||||
interface PageMeta {
|
||||
middleware?: MiddlewareKey | NavigationGuard | Array<MiddlewareKey | NavigationGuard>
|
||||
}
|
||||
}
|
14
.nuxt/types/nitro-config.d.ts
vendored
@ -1,14 +0,0 @@
|
||||
// Generated by nitro
|
||||
|
||||
// App Config
|
||||
import type { Defu } from 'defu'
|
||||
|
||||
|
||||
|
||||
type UserAppConfig = Defu<{}, []>
|
||||
|
||||
declare module "nitropack/types" {
|
||||
interface AppConfig extends UserAppConfig {}
|
||||
|
||||
}
|
||||
export {}
|
141
.nuxt/types/nitro-imports.d.ts
vendored
@ -1,141 +0,0 @@
|
||||
declare global {
|
||||
const __buildAssetsURL: typeof import('../../node_modules/nuxt/dist/core/runtime/nitro/utils/paths')['buildAssetsURL']
|
||||
const __publicAssetsURL: typeof import('../../node_modules/nuxt/dist/core/runtime/nitro/utils/paths')['publicAssetsURL']
|
||||
const appendCorsHeaders: typeof import('../../node_modules/h3')['appendCorsHeaders']
|
||||
const appendCorsPreflightHeaders: typeof import('../../node_modules/h3')['appendCorsPreflightHeaders']
|
||||
const appendHeader: typeof import('../../node_modules/h3')['appendHeader']
|
||||
const appendHeaders: typeof import('../../node_modules/h3')['appendHeaders']
|
||||
const appendResponseHeader: typeof import('../../node_modules/h3')['appendResponseHeader']
|
||||
const appendResponseHeaders: typeof import('../../node_modules/h3')['appendResponseHeaders']
|
||||
const assertMethod: typeof import('../../node_modules/h3')['assertMethod']
|
||||
const cachedEventHandler: typeof import('../../node_modules/nitropack/dist/runtime/internal/cache')['cachedEventHandler']
|
||||
const cachedFunction: typeof import('../../node_modules/nitropack/dist/runtime/internal/cache')['cachedFunction']
|
||||
const callNodeListener: typeof import('../../node_modules/h3')['callNodeListener']
|
||||
const clearResponseHeaders: typeof import('../../node_modules/h3')['clearResponseHeaders']
|
||||
const clearSession: typeof import('../../node_modules/h3')['clearSession']
|
||||
const createApp: typeof import('../../node_modules/h3')['createApp']
|
||||
const createAppEventHandler: typeof import('../../node_modules/h3')['createAppEventHandler']
|
||||
const createError: typeof import('../../node_modules/h3')['createError']
|
||||
const createEvent: typeof import('../../node_modules/h3')['createEvent']
|
||||
const createEventStream: typeof import('../../node_modules/h3')['createEventStream']
|
||||
const createRouter: typeof import('../../node_modules/h3')['createRouter']
|
||||
const defaultContentType: typeof import('../../node_modules/h3')['defaultContentType']
|
||||
const defineAppConfig: typeof import('../../node_modules/nuxt/dist/core/runtime/nitro/utils/config')['defineAppConfig']
|
||||
const defineCachedEventHandler: typeof import('../../node_modules/nitropack/dist/runtime/internal/cache')['defineCachedEventHandler']
|
||||
const defineCachedFunction: typeof import('../../node_modules/nitropack/dist/runtime/internal/cache')['defineCachedFunction']
|
||||
const defineEventHandler: typeof import('../../node_modules/h3')['defineEventHandler']
|
||||
const defineLazyEventHandler: typeof import('../../node_modules/h3')['defineLazyEventHandler']
|
||||
const defineNitroErrorHandler: typeof import('../../node_modules/nitropack/dist/runtime/internal/error/utils')['defineNitroErrorHandler']
|
||||
const defineNitroPlugin: typeof import('../../node_modules/nitropack/dist/runtime/internal/plugin')['defineNitroPlugin']
|
||||
const defineNodeListener: typeof import('../../node_modules/h3')['defineNodeListener']
|
||||
const defineNodeMiddleware: typeof import('../../node_modules/h3')['defineNodeMiddleware']
|
||||
const defineRenderHandler: typeof import('../../node_modules/nitropack/dist/runtime/internal/renderer')['defineRenderHandler']
|
||||
const defineRequestMiddleware: typeof import('../../node_modules/h3')['defineRequestMiddleware']
|
||||
const defineResponseMiddleware: typeof import('../../node_modules/h3')['defineResponseMiddleware']
|
||||
const defineRouteMeta: typeof import('../../node_modules/nitropack/dist/runtime/internal/meta')['defineRouteMeta']
|
||||
const defineTask: typeof import('../../node_modules/nitropack/dist/runtime/internal/task')['defineTask']
|
||||
const defineWebSocket: typeof import('../../node_modules/h3')['defineWebSocket']
|
||||
const defineWebSocketHandler: typeof import('../../node_modules/h3')['defineWebSocketHandler']
|
||||
const deleteCookie: typeof import('../../node_modules/h3')['deleteCookie']
|
||||
const dynamicEventHandler: typeof import('../../node_modules/h3')['dynamicEventHandler']
|
||||
const eventHandler: typeof import('../../node_modules/h3')['eventHandler']
|
||||
const fetchWithEvent: typeof import('../../node_modules/h3')['fetchWithEvent']
|
||||
const fromNodeMiddleware: typeof import('../../node_modules/h3')['fromNodeMiddleware']
|
||||
const fromPlainHandler: typeof import('../../node_modules/h3')['fromPlainHandler']
|
||||
const fromWebHandler: typeof import('../../node_modules/h3')['fromWebHandler']
|
||||
const getCookie: typeof import('../../node_modules/h3')['getCookie']
|
||||
const getHeader: typeof import('../../node_modules/h3')['getHeader']
|
||||
const getHeaders: typeof import('../../node_modules/h3')['getHeaders']
|
||||
const getMethod: typeof import('../../node_modules/h3')['getMethod']
|
||||
const getProxyRequestHeaders: typeof import('../../node_modules/h3')['getProxyRequestHeaders']
|
||||
const getQuery: typeof import('../../node_modules/h3')['getQuery']
|
||||
const getRequestFingerprint: typeof import('../../node_modules/h3')['getRequestFingerprint']
|
||||
const getRequestHeader: typeof import('../../node_modules/h3')['getRequestHeader']
|
||||
const getRequestHeaders: typeof import('../../node_modules/h3')['getRequestHeaders']
|
||||
const getRequestHost: typeof import('../../node_modules/h3')['getRequestHost']
|
||||
const getRequestIP: typeof import('../../node_modules/h3')['getRequestIP']
|
||||
const getRequestPath: typeof import('../../node_modules/h3')['getRequestPath']
|
||||
const getRequestProtocol: typeof import('../../node_modules/h3')['getRequestProtocol']
|
||||
const getRequestURL: typeof import('../../node_modules/h3')['getRequestURL']
|
||||
const getRequestWebStream: typeof import('../../node_modules/h3')['getRequestWebStream']
|
||||
const getResponseHeader: typeof import('../../node_modules/h3')['getResponseHeader']
|
||||
const getResponseHeaders: typeof import('../../node_modules/h3')['getResponseHeaders']
|
||||
const getResponseStatus: typeof import('../../node_modules/h3')['getResponseStatus']
|
||||
const getResponseStatusText: typeof import('../../node_modules/h3')['getResponseStatusText']
|
||||
const getRouteRules: typeof import('../../node_modules/nitropack/dist/runtime/internal/route-rules')['getRouteRules']
|
||||
const getRouterParam: typeof import('../../node_modules/h3')['getRouterParam']
|
||||
const getRouterParams: typeof import('../../node_modules/h3')['getRouterParams']
|
||||
const getSession: typeof import('../../node_modules/h3')['getSession']
|
||||
const getValidatedQuery: typeof import('../../node_modules/h3')['getValidatedQuery']
|
||||
const getValidatedRouterParams: typeof import('../../node_modules/h3')['getValidatedRouterParams']
|
||||
const handleCacheHeaders: typeof import('../../node_modules/h3')['handleCacheHeaders']
|
||||
const handleCors: typeof import('../../node_modules/h3')['handleCors']
|
||||
const isCorsOriginAllowed: typeof import('../../node_modules/h3')['isCorsOriginAllowed']
|
||||
const isError: typeof import('../../node_modules/h3')['isError']
|
||||
const isEvent: typeof import('../../node_modules/h3')['isEvent']
|
||||
const isEventHandler: typeof import('../../node_modules/h3')['isEventHandler']
|
||||
const isMethod: typeof import('../../node_modules/h3')['isMethod']
|
||||
const isPreflightRequest: typeof import('../../node_modules/h3')['isPreflightRequest']
|
||||
const isStream: typeof import('../../node_modules/h3')['isStream']
|
||||
const isWebResponse: typeof import('../../node_modules/h3')['isWebResponse']
|
||||
const lazyEventHandler: typeof import('../../node_modules/h3')['lazyEventHandler']
|
||||
const nitroPlugin: typeof import('../../node_modules/nitropack/dist/runtime/internal/plugin')['nitroPlugin']
|
||||
const parseCookies: typeof import('../../node_modules/h3')['parseCookies']
|
||||
const promisifyNodeListener: typeof import('../../node_modules/h3')['promisifyNodeListener']
|
||||
const proxyRequest: typeof import('../../node_modules/h3')['proxyRequest']
|
||||
const readBody: typeof import('../../node_modules/h3')['readBody']
|
||||
const readFormData: typeof import('../../node_modules/h3')['readFormData']
|
||||
const readMultipartFormData: typeof import('../../node_modules/h3')['readMultipartFormData']
|
||||
const readRawBody: typeof import('../../node_modules/h3')['readRawBody']
|
||||
const readValidatedBody: typeof import('../../node_modules/h3')['readValidatedBody']
|
||||
const removeResponseHeader: typeof import('../../node_modules/h3')['removeResponseHeader']
|
||||
const runTask: typeof import('../../node_modules/nitropack/dist/runtime/internal/task')['runTask']
|
||||
const sanitizeStatusCode: typeof import('../../node_modules/h3')['sanitizeStatusCode']
|
||||
const sanitizeStatusMessage: typeof import('../../node_modules/h3')['sanitizeStatusMessage']
|
||||
const sealSession: typeof import('../../node_modules/h3')['sealSession']
|
||||
const send: typeof import('../../node_modules/h3')['send']
|
||||
const sendError: typeof import('../../node_modules/h3')['sendError']
|
||||
const sendIterable: typeof import('../../node_modules/h3')['sendIterable']
|
||||
const sendNoContent: typeof import('../../node_modules/h3')['sendNoContent']
|
||||
const sendProxy: typeof import('../../node_modules/h3')['sendProxy']
|
||||
const sendRedirect: typeof import('../../node_modules/h3')['sendRedirect']
|
||||
const sendStream: typeof import('../../node_modules/h3')['sendStream']
|
||||
const sendWebResponse: typeof import('../../node_modules/h3')['sendWebResponse']
|
||||
const serveStatic: typeof import('../../node_modules/h3')['serveStatic']
|
||||
const setCookie: typeof import('../../node_modules/h3')['setCookie']
|
||||
const setHeader: typeof import('../../node_modules/h3')['setHeader']
|
||||
const setHeaders: typeof import('../../node_modules/h3')['setHeaders']
|
||||
const setResponseHeader: typeof import('../../node_modules/h3')['setResponseHeader']
|
||||
const setResponseHeaders: typeof import('../../node_modules/h3')['setResponseHeaders']
|
||||
const setResponseStatus: typeof import('../../node_modules/h3')['setResponseStatus']
|
||||
const splitCookiesString: typeof import('../../node_modules/h3')['splitCookiesString']
|
||||
const toEventHandler: typeof import('../../node_modules/h3')['toEventHandler']
|
||||
const toNodeListener: typeof import('../../node_modules/h3')['toNodeListener']
|
||||
const toPlainHandler: typeof import('../../node_modules/h3')['toPlainHandler']
|
||||
const toWebHandler: typeof import('../../node_modules/h3')['toWebHandler']
|
||||
const toWebRequest: typeof import('../../node_modules/h3')['toWebRequest']
|
||||
const unsealSession: typeof import('../../node_modules/h3')['unsealSession']
|
||||
const updateSession: typeof import('../../node_modules/h3')['updateSession']
|
||||
const useAppConfig: typeof import('../../node_modules/nitropack/dist/runtime/internal/config')['useAppConfig']
|
||||
const useBase: typeof import('../../node_modules/h3')['useBase']
|
||||
const useEvent: typeof import('../../node_modules/nitropack/dist/runtime/internal/context')['useEvent']
|
||||
const useNitroApp: typeof import('../../node_modules/nitropack/dist/runtime/internal/app')['useNitroApp']
|
||||
const useRuntimeConfig: typeof import('../../node_modules/nitropack/dist/runtime/internal/config')['useRuntimeConfig']
|
||||
const useSession: typeof import('../../node_modules/h3')['useSession']
|
||||
const useStorage: typeof import('../../node_modules/nitropack/dist/runtime/internal/storage')['useStorage']
|
||||
const writeEarlyHints: typeof import('../../node_modules/h3')['writeEarlyHints']
|
||||
}
|
||||
export { useNitroApp } from 'nitropack/runtime/internal/app';
|
||||
export { useRuntimeConfig, useAppConfig } from 'nitropack/runtime/internal/config';
|
||||
export { defineNitroPlugin, nitroPlugin } from 'nitropack/runtime/internal/plugin';
|
||||
export { defineCachedFunction, defineCachedEventHandler, cachedFunction, cachedEventHandler } from 'nitropack/runtime/internal/cache';
|
||||
export { useStorage } from 'nitropack/runtime/internal/storage';
|
||||
export { defineRenderHandler } from 'nitropack/runtime/internal/renderer';
|
||||
export { defineRouteMeta } from 'nitropack/runtime/internal/meta';
|
||||
export { getRouteRules } from 'nitropack/runtime/internal/route-rules';
|
||||
export { useEvent } from 'nitropack/runtime/internal/context';
|
||||
export { defineTask, runTask } from 'nitropack/runtime/internal/task';
|
||||
export { defineNitroErrorHandler } from 'nitropack/runtime/internal/error/utils';
|
||||
export { appendCorsHeaders, appendCorsPreflightHeaders, appendHeader, appendHeaders, appendResponseHeader, appendResponseHeaders, assertMethod, callNodeListener, clearResponseHeaders, clearSession, createApp, createAppEventHandler, createError, createEvent, createEventStream, createRouter, defaultContentType, defineEventHandler, defineLazyEventHandler, defineNodeListener, defineNodeMiddleware, defineRequestMiddleware, defineResponseMiddleware, defineWebSocket, defineWebSocketHandler, deleteCookie, dynamicEventHandler, eventHandler, fetchWithEvent, fromNodeMiddleware, fromPlainHandler, fromWebHandler, getCookie, getHeader, getHeaders, getMethod, getProxyRequestHeaders, getQuery, getRequestFingerprint, getRequestHeader, getRequestHeaders, getRequestHost, getRequestIP, getRequestPath, getRequestProtocol, getRequestURL, getRequestWebStream, getResponseHeader, getResponseHeaders, getResponseStatus, getResponseStatusText, getRouterParam, getRouterParams, getSession, getValidatedQuery, getValidatedRouterParams, handleCacheHeaders, handleCors, isCorsOriginAllowed, isError, isEvent, isEventHandler, isMethod, isPreflightRequest, isStream, isWebResponse, lazyEventHandler, parseCookies, promisifyNodeListener, proxyRequest, readBody, readFormData, readMultipartFormData, readRawBody, readValidatedBody, removeResponseHeader, sanitizeStatusCode, sanitizeStatusMessage, sealSession, send, sendError, sendIterable, sendNoContent, sendProxy, sendRedirect, sendStream, sendWebResponse, serveStatic, setCookie, setHeader, setHeaders, setResponseHeader, setResponseHeaders, setResponseStatus, splitCookiesString, toEventHandler, toNodeListener, toPlainHandler, toWebHandler, toWebRequest, unsealSession, updateSession, useBase, useSession, writeEarlyHints } from 'h3';
|
||||
export { buildAssetsURL as __buildAssetsURL, publicAssetsURL as __publicAssetsURL } from '/Users/dkoziavin/code/sub-projects/e-book/node_modules/nuxt/dist/core/runtime/nitro/utils/paths';
|
||||
export { defineAppConfig } from '/Users/dkoziavin/code/sub-projects/e-book/node_modules/nuxt/dist/core/runtime/nitro/utils/config';
|
6
.nuxt/types/nitro-middleware.d.ts
vendored
@ -1,6 +0,0 @@
|
||||
export type MiddlewareKey = never
|
||||
declare module 'nitropack' {
|
||||
interface NitroRouteConfig {
|
||||
appMiddleware?: MiddlewareKey | MiddlewareKey[] | Record<MiddlewareKey, boolean>
|
||||
}
|
||||
}
|
34
.nuxt/types/nitro-nuxt.d.ts
vendored
@ -1,34 +0,0 @@
|
||||
|
||||
/// <reference path="nitro-middleware.d.ts" />
|
||||
/// <reference path="./schema.d.ts" />
|
||||
|
||||
import type { RuntimeConfig } from 'nuxt/schema'
|
||||
import type { H3Event } from 'h3'
|
||||
import type { LogObject } from 'consola'
|
||||
import type { NuxtIslandContext, NuxtIslandResponse, NuxtRenderHTMLContext } from 'nuxt/app'
|
||||
|
||||
declare module 'nitropack' {
|
||||
interface NitroRuntimeConfigApp {
|
||||
buildAssetsDir: string
|
||||
cdnURL: string
|
||||
}
|
||||
interface NitroRuntimeConfig extends RuntimeConfig {}
|
||||
interface NitroRouteConfig {
|
||||
ssr?: boolean
|
||||
noScripts?: boolean
|
||||
/** @deprecated Use `noScripts` instead */
|
||||
experimentalNoScripts?: boolean
|
||||
}
|
||||
interface NitroRouteRules {
|
||||
ssr?: boolean
|
||||
noScripts?: boolean
|
||||
/** @deprecated Use `noScripts` instead */
|
||||
experimentalNoScripts?: boolean
|
||||
appMiddleware?: Record<string, boolean>
|
||||
}
|
||||
interface NitroRuntimeHooks {
|
||||
'dev:ssr-logs': (ctx: { logs: LogObject[], path: string }) => void | Promise<void>
|
||||
'render:html': (htmlContext: NuxtRenderHTMLContext, context: { event: H3Event }) => void | Promise<void>
|
||||
'render:island': (islandResponse: NuxtIslandResponse, context: { event: H3Event, islandContext: NuxtIslandContext }) => void | Promise<void>
|
||||
}
|
||||
}
|
20
.nuxt/types/nitro-routes.d.ts
vendored
@ -1,20 +0,0 @@
|
||||
// Generated by nitro
|
||||
import type { Serialize, Simplify } from "nitropack/types";
|
||||
declare module "nitropack/types" {
|
||||
type Awaited<T> = T extends PromiseLike<infer U> ? Awaited<U> : T
|
||||
interface InternalApi {
|
||||
'/__nuxt_error': {
|
||||
'default': Simplify<Serialize<Awaited<ReturnType<typeof import('../../node_modules/nuxt/dist/core/runtime/nitro/handlers/renderer').default>>>>
|
||||
}
|
||||
'/api/_nuxt_icon/:collection': {
|
||||
'default': Simplify<Serialize<Awaited<ReturnType<typeof import('../../node_modules/@nuxt/icon/dist/runtime/server/api').default>>>>
|
||||
}
|
||||
'/__nuxt_island/**': {
|
||||
'default': Simplify<Serialize<Awaited<ReturnType<typeof import('../../server/#internal/nuxt/island-renderer').default>>>>
|
||||
}
|
||||
'/_ipx/**': {
|
||||
'default': Simplify<Serialize<Awaited<ReturnType<typeof import('../../node_modules/@nuxt/image/dist/runtime/ipx').default>>>>
|
||||
}
|
||||
}
|
||||
}
|
||||
export {}
|
3
.nuxt/types/nitro.d.ts
vendored
@ -1,3 +0,0 @@
|
||||
/// <reference path="./nitro-routes.d.ts" />
|
||||
/// <reference path="./nitro-config.d.ts" />
|
||||
/// <reference path="./nitro-imports.d.ts" />
|
34
.nuxt/types/plugins.d.ts
vendored
@ -1,34 +0,0 @@
|
||||
// Generated by Nuxt'
|
||||
import type { Plugin } from '#app'
|
||||
|
||||
type Decorate<T extends Record<string, any>> = { [K in keyof T as K extends string ? `$${K}` : never]: T[K] }
|
||||
|
||||
type InjectionType<A extends Plugin> = A extends {default: Plugin<infer T>} ? Decorate<T> : unknown
|
||||
|
||||
type NuxtAppInjections =
|
||||
InjectionType<typeof import("../../node_modules/nuxt/dist/app/plugins/revive-payload.client.js")> &
|
||||
InjectionType<typeof import("../../node_modules/nuxt/dist/head/runtime/plugins/unhead.js")> &
|
||||
InjectionType<typeof import("../../node_modules/nuxt/dist/pages/runtime/plugins/router.js")> &
|
||||
InjectionType<typeof import("../../node_modules/nuxt/dist/app/plugins/debug-hooks.js")> &
|
||||
InjectionType<typeof import("../../node_modules/nuxt/dist/app/plugins/payload.client.js")> &
|
||||
InjectionType<typeof import("../../node_modules/nuxt/dist/app/plugins/navigation-repaint.client.js")> &
|
||||
InjectionType<typeof import("../../node_modules/nuxt/dist/app/plugins/check-outdated-build.client.js")> &
|
||||
InjectionType<typeof import("../../node_modules/nuxt/dist/app/plugins/revive-payload.server.js")> &
|
||||
InjectionType<typeof import("../../node_modules/nuxt/dist/app/plugins/chunk-reload.client.js")> &
|
||||
InjectionType<typeof import("../../node_modules/@pinia/nuxt/dist/runtime/plugin.vue3.js")> &
|
||||
InjectionType<typeof import("../../node_modules/nuxt/dist/pages/runtime/plugins/prefetch.client.js")> &
|
||||
InjectionType<typeof import("../../node_modules/@nuxt/icon/dist/runtime/plugin.js")>
|
||||
|
||||
declare module '#app' {
|
||||
interface NuxtApp extends NuxtAppInjections { }
|
||||
|
||||
interface NuxtAppLiterals {
|
||||
pluginName: 'nuxt:revive-payload:client' | 'nuxt:head' | 'nuxt:router' | 'nuxt:debug:hooks' | 'nuxt:payload' | 'nuxt:revive-payload:server' | 'nuxt:chunk-reload' | 'pinia' | 'nuxt:global-components' | 'nuxt:prefetch' | '@nuxt/icon'
|
||||
}
|
||||
}
|
||||
|
||||
declare module 'vue' {
|
||||
interface ComponentCustomProperties extends NuxtAppInjections { }
|
||||
}
|
||||
|
||||
export { }
|
168
.nuxt/types/schema.d.ts
vendored
@ -1,168 +0,0 @@
|
||||
import { NuxtModule, RuntimeConfig } from '@nuxt/schema'
|
||||
declare module '@nuxt/schema' {
|
||||
interface NuxtOptions {
|
||||
/**
|
||||
* Configuration for `@nuxt/eslint`
|
||||
*/
|
||||
["eslint"]: typeof import("@nuxt/eslint").default extends NuxtModule<infer O> ? O : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxt/icon`
|
||||
*/
|
||||
["icon"]: typeof import("@nuxt/icon").default extends NuxtModule<infer O> ? O : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxt/image`
|
||||
*/
|
||||
["image"]: typeof import("@nuxt/image").default extends NuxtModule<infer O> ? O : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@pinia/nuxt`
|
||||
*/
|
||||
["pinia"]: typeof import("@pinia/nuxt").default extends NuxtModule<infer O> ? O : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxtjs/tailwindcss`
|
||||
*/
|
||||
["tailwindcss"]: typeof import("@nuxtjs/tailwindcss").default extends NuxtModule<infer O> ? O : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxt/devtools`
|
||||
*/
|
||||
["devtools"]: typeof import("@nuxt/devtools").default extends NuxtModule<infer O> ? O : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxt/telemetry`
|
||||
*/
|
||||
["telemetry"]: typeof import("@nuxt/telemetry").default extends NuxtModule<infer O> ? O : Record<string, any>
|
||||
}
|
||||
interface NuxtConfig {
|
||||
/**
|
||||
* Configuration for `@nuxt/eslint`
|
||||
*/
|
||||
["eslint"]?: typeof import("@nuxt/eslint").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxt/icon`
|
||||
*/
|
||||
["icon"]?: typeof import("@nuxt/icon").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxt/image`
|
||||
*/
|
||||
["image"]?: typeof import("@nuxt/image").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@pinia/nuxt`
|
||||
*/
|
||||
["pinia"]?: typeof import("@pinia/nuxt").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxtjs/tailwindcss`
|
||||
*/
|
||||
["tailwindcss"]?: typeof import("@nuxtjs/tailwindcss").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxt/devtools`
|
||||
*/
|
||||
["devtools"]?: typeof import("@nuxt/devtools").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxt/telemetry`
|
||||
*/
|
||||
["telemetry"]?: typeof import("@nuxt/telemetry").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
|
||||
modules?: (undefined | null | false | NuxtModule<any> | string | [NuxtModule | string, Record<string, any>] | ["@nuxt/eslint", Exclude<NuxtConfig["eslint"], boolean>] | ["@nuxt/icon", Exclude<NuxtConfig["icon"], boolean>] | ["@nuxt/image", Exclude<NuxtConfig["image"], boolean>] | ["@pinia/nuxt", Exclude<NuxtConfig["pinia"], boolean>] | ["@nuxtjs/tailwindcss", Exclude<NuxtConfig["tailwindcss"], boolean>] | ["@nuxt/devtools", Exclude<NuxtConfig["devtools"], boolean>] | ["@nuxt/telemetry", Exclude<NuxtConfig["telemetry"], boolean>])[],
|
||||
}
|
||||
}
|
||||
declare module 'nuxt/schema' {
|
||||
interface NuxtOptions {
|
||||
/**
|
||||
* Configuration for `@nuxt/eslint`
|
||||
* @see https://www.npmjs.com/package/@nuxt/eslint
|
||||
*/
|
||||
["eslint"]: typeof import("@nuxt/eslint").default extends NuxtModule<infer O> ? O : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxt/icon`
|
||||
* @see https://www.npmjs.com/package/@nuxt/icon
|
||||
*/
|
||||
["icon"]: typeof import("@nuxt/icon").default extends NuxtModule<infer O> ? O : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxt/image`
|
||||
* @see https://www.npmjs.com/package/@nuxt/image
|
||||
*/
|
||||
["image"]: typeof import("@nuxt/image").default extends NuxtModule<infer O> ? O : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@pinia/nuxt`
|
||||
* @see https://www.npmjs.com/package/@pinia/nuxt
|
||||
*/
|
||||
["pinia"]: typeof import("@pinia/nuxt").default extends NuxtModule<infer O> ? O : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxtjs/tailwindcss`
|
||||
* @see https://www.npmjs.com/package/@nuxtjs/tailwindcss
|
||||
*/
|
||||
["tailwindcss"]: typeof import("@nuxtjs/tailwindcss").default extends NuxtModule<infer O> ? O : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxt/devtools`
|
||||
* @see https://www.npmjs.com/package/@nuxt/devtools
|
||||
*/
|
||||
["devtools"]: typeof import("@nuxt/devtools").default extends NuxtModule<infer O> ? O : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxt/telemetry`
|
||||
* @see https://www.npmjs.com/package/@nuxt/telemetry
|
||||
*/
|
||||
["telemetry"]: typeof import("@nuxt/telemetry").default extends NuxtModule<infer O> ? O : Record<string, any>
|
||||
}
|
||||
interface NuxtConfig {
|
||||
/**
|
||||
* Configuration for `@nuxt/eslint`
|
||||
* @see https://www.npmjs.com/package/@nuxt/eslint
|
||||
*/
|
||||
["eslint"]?: typeof import("@nuxt/eslint").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxt/icon`
|
||||
* @see https://www.npmjs.com/package/@nuxt/icon
|
||||
*/
|
||||
["icon"]?: typeof import("@nuxt/icon").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxt/image`
|
||||
* @see https://www.npmjs.com/package/@nuxt/image
|
||||
*/
|
||||
["image"]?: typeof import("@nuxt/image").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@pinia/nuxt`
|
||||
* @see https://www.npmjs.com/package/@pinia/nuxt
|
||||
*/
|
||||
["pinia"]?: typeof import("@pinia/nuxt").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxtjs/tailwindcss`
|
||||
* @see https://www.npmjs.com/package/@nuxtjs/tailwindcss
|
||||
*/
|
||||
["tailwindcss"]?: typeof import("@nuxtjs/tailwindcss").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxt/devtools`
|
||||
* @see https://www.npmjs.com/package/@nuxt/devtools
|
||||
*/
|
||||
["devtools"]?: typeof import("@nuxt/devtools").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
|
||||
/**
|
||||
* Configuration for `@nuxt/telemetry`
|
||||
* @see https://www.npmjs.com/package/@nuxt/telemetry
|
||||
*/
|
||||
["telemetry"]?: typeof import("@nuxt/telemetry").default extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
|
||||
modules?: (undefined | null | false | NuxtModule<any> | string | [NuxtModule | string, Record<string, any>] | ["@nuxt/eslint", Exclude<NuxtConfig["eslint"], boolean>] | ["@nuxt/icon", Exclude<NuxtConfig["icon"], boolean>] | ["@nuxt/image", Exclude<NuxtConfig["image"], boolean>] | ["@pinia/nuxt", Exclude<NuxtConfig["pinia"], boolean>] | ["@nuxtjs/tailwindcss", Exclude<NuxtConfig["tailwindcss"], boolean>] | ["@nuxt/devtools", Exclude<NuxtConfig["devtools"], boolean>] | ["@nuxt/telemetry", Exclude<NuxtConfig["telemetry"], boolean>])[],
|
||||
}
|
||||
interface RuntimeConfig {
|
||||
app: {
|
||||
buildId: string,
|
||||
|
||||
baseURL: string,
|
||||
|
||||
buildAssetsDir: string,
|
||||
|
||||
cdnURL: string,
|
||||
},
|
||||
|
||||
nitro: {
|
||||
envPrefix: string,
|
||||
},
|
||||
|
||||
icon: {
|
||||
serverKnownCssClasses: Array<any>,
|
||||
},
|
||||
}
|
||||
interface PublicRuntimeConfig {
|
||||
|
||||
}
|
||||
}
|
||||
declare module 'vue' {
|
||||
interface ComponentCustomProperties {
|
||||
$config: RuntimeConfig
|
||||
}
|
||||
}
|
0
.nuxt/types/vue-shim.d.ts
vendored
7
.prettierrc.json
Normal file
@ -0,0 +1,7 @@
|
||||
{
|
||||
"$schema": "https://json.schemastore.org/prettierrc",
|
||||
"semi": false,
|
||||
"singleQuote": true,
|
||||
"printWidth": 100
|
||||
}
|
||||
|
3
.vscode/extensions.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"recommendations": ["Vue.volar"]
|
||||
}
|
76
README.md
@ -1,75 +1,27 @@
|
||||
# Nuxt Minimal Starter
|
||||
# Проект сайт vino Galante
|
||||
|
||||
Look at the [Nuxt documentation](https://nuxt.com/docs/getting-started/introduction) to learn more.
|
||||
## Описание проекта
|
||||
|
||||
## Setup
|
||||
Интернет сайт Vino Galente создан для продажи книг за авторством...
|
||||
|
||||
Make sure to install dependencies:
|
||||
### Установка, для разработки
|
||||
|
||||
```bash
|
||||
# npm
|
||||
npm install
|
||||
Копируем env
|
||||
|
||||
# pnpm
|
||||
pnpm install
|
||||
|
||||
# yarn
|
||||
yarn install
|
||||
|
||||
# bun
|
||||
bun install
|
||||
```
|
||||
cp frontend.env frontend.env.example
|
||||
```
|
||||
|
||||
## Development Server
|
||||
Устанавливаем зависимости
|
||||
|
||||
Start the development server on `http://localhost:3000`:
|
||||
|
||||
```bash
|
||||
# npm
|
||||
npm run dev
|
||||
|
||||
# pnpm
|
||||
pnpm dev
|
||||
|
||||
# yarn
|
||||
yarn dev
|
||||
|
||||
# bun
|
||||
bun run dev
|
||||
```
|
||||
yarn
|
||||
```
|
||||
|
||||
## Production
|
||||
Запуск dev
|
||||
|
||||
Build the application for production:
|
||||
|
||||
```bash
|
||||
# npm
|
||||
npm run build
|
||||
|
||||
# pnpm
|
||||
pnpm build
|
||||
|
||||
# yarn
|
||||
yarn build
|
||||
|
||||
# bun
|
||||
bun run build
|
||||
```
|
||||
vite
|
||||
```
|
||||
|
||||
Locally preview production build:
|
||||
|
||||
```bash
|
||||
# npm
|
||||
npm run preview
|
||||
|
||||
# pnpm
|
||||
pnpm preview
|
||||
|
||||
# yarn
|
||||
yarn preview
|
||||
|
||||
# bun
|
||||
bun run preview
|
||||
```
|
||||
|
||||
Check out the [deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information.
|
||||
Разворачивание, docker
|
||||
|
18
app.vue
@ -1,18 +0,0 @@
|
||||
<template>
|
||||
<NuxtLayout>
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" />
|
||||
<link
|
||||
href="https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap"
|
||||
rel="stylesheet"
|
||||
/>
|
||||
<link
|
||||
href="https://fonts.googleapis.com/css2?family=Russo+One&display=swap"
|
||||
rel="stylesheet"
|
||||
/>
|
||||
<NuxtPage />
|
||||
</NuxtLayout>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
const route = useRoute();
|
||||
</script>
|
@ -1,42 +0,0 @@
|
||||
@tailwind base;
|
||||
@tailwind components;
|
||||
@tailwind utilities;
|
||||
|
||||
:root {
|
||||
--color-primary: rgba(255, 255, 255, 1);
|
||||
--color-secondary: rgba(229, 30, 125, 1);
|
||||
--color-three: rgba(245, 75, 126, 1);
|
||||
|
||||
--color-accent-50: #f54378;
|
||||
--color-accent-100: #e51e7d;
|
||||
--color-accent-150: #c4035f;
|
||||
|
||||
--color-black-50: #0c1018;
|
||||
|
||||
/* system colors */
|
||||
--color-error: oklch(57.7% 0.245 27.325);
|
||||
--color-warning: oklch(76.9% 0.188 70.08);
|
||||
|
||||
/* disabled */
|
||||
--color-text-disabled: oklch(55.1% 0.027 264.364);
|
||||
--color-bg-disabled: oklch(92.8% 0.006 264.531);
|
||||
}
|
||||
|
||||
/* Кастомные классы шрифтов */
|
||||
.lato-thin { font-family: 'Lato', sans-serif; font-weight: 100; font-style: normal; }
|
||||
.lato-light { font-family: 'Lato', sans-serif; font-weight: 300; font-style: normal; }
|
||||
.lato-regular { font-family: 'Lato', sans-serif; font-weight: 400; font-style: normal; }
|
||||
.lato-bold { font-family: 'Lato', sans-serif; font-weight: 700; font-style: normal; }
|
||||
.lato-black { font-family: 'Lato', sans-serif; font-weight: 900; font-style: normal; }
|
||||
|
||||
.lato-thin-italic { font-family: 'Lato', sans-serif; font-weight: 100; font-style: italic; }
|
||||
.lato-light-italic { font-family: 'Lato', sans-serif; font-weight: 300; font-style: italic; }
|
||||
.lato-regular-italic { font-family: 'Lato', sans-serif; font-weight: 400; font-style: italic; }
|
||||
.lato-bold-italic { font-family: 'Lato', sans-serif; font-weight: 700; font-style: italic; }
|
||||
.lato-black-italic { font-family: 'Lato', sans-serif; font-weight: 900; font-style: italic; }
|
||||
|
||||
.russo-one-regular {
|
||||
font-family: 'Russo One', sans-serif;
|
||||
font-weight: 700;
|
||||
font-style: normal;
|
||||
}
|
@ -1,11 +0,0 @@
|
||||
import modules from './modules'
|
||||
import sitemap from './sitemap'
|
||||
|
||||
export default {
|
||||
modules,
|
||||
sitemap,
|
||||
typescript: {
|
||||
strict: true,
|
||||
typeCheck: true,
|
||||
},
|
||||
}
|
@ -1,12 +0,0 @@
|
||||
export default [
|
||||
"@nuxt/eslint",
|
||||
"@nuxt/icon",
|
||||
"@nuxt/image",
|
||||
// '@nuxt/content',
|
||||
// '@nuxt/fonts',
|
||||
"@pinia/nuxt",
|
||||
"@nuxtjs/tailwindcss",
|
||||
"@pinia/nuxt",
|
||||
// '@nuxtjs/robots',
|
||||
// '@nuxtjs/sitemap',
|
||||
];
|
@ -1,12 +0,0 @@
|
||||
// ./sitemap.config.ts
|
||||
export default {
|
||||
siteUrl: 'https://ebook.miduway.space',
|
||||
|
||||
// Примеры маршрутов, можно заменить на API-запрос
|
||||
urls: [
|
||||
{ loc: '/books/1' },
|
||||
{ loc: '/books/1/title-1' },
|
||||
{ loc: '/books/2/title-2' },
|
||||
{ loc: '/books/2' },
|
||||
],
|
||||
}
|
21
index.html
Normal file
@ -0,0 +1,21 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<link href="/src/style.css" rel="stylesheet" />
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
||||
<link
|
||||
href="https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap"
|
||||
rel="stylesheet"
|
||||
/>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Russo+One&display=swap" rel="stylesheet" />
|
||||
<title>e-book</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
<script type="module" src="/src/main.ts"></script>
|
||||
</body>
|
||||
</html>
|
@ -1,3 +0,0 @@
|
||||
export { default as footerNavigation } from '@/layouts/UiFooter/_data/footer-navigation.data'
|
||||
|
||||
export { default as refLitres } from '@/layouts/UiFooter/_data/ref-litres.data'
|
@ -1 +0,0 @@
|
||||
export { default as headerNavigation } from '@/layouts/UiHeader/_data/header-navigation.data'
|
@ -1,25 +0,0 @@
|
||||
import config from "./config";
|
||||
|
||||
import { fileURLToPath, URL } from "node:url";
|
||||
// import sitemap from "./config/sitemap";
|
||||
// https://nuxt.com/docs/api/configuration/nuxt-config
|
||||
export default defineNuxtConfig({
|
||||
compatibilityDate: "2025-05-15",
|
||||
devtools: { enabled: true },
|
||||
|
||||
devServer: {
|
||||
host: "localhost",
|
||||
port: 4002,
|
||||
},
|
||||
|
||||
nitro: {
|
||||
output: {
|
||||
dir: "./dist",
|
||||
},
|
||||
},
|
||||
alias: {
|
||||
"@": fileURLToPath(new URL("./", import.meta.url)),
|
||||
},
|
||||
css: ["@/assets/css/tailwind.css"],
|
||||
...config,
|
||||
});
|
15744
package-lock.json
generated
54
package.json
@ -1,47 +1,43 @@
|
||||
{
|
||||
"name": "e-book",
|
||||
"private": true,
|
||||
"version": "0.0.0",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"build": "nuxt build",
|
||||
"dev": "nuxt dev",
|
||||
"generate": "nuxt generate",
|
||||
"preview": "nuxt preview",
|
||||
"postinstall": "nuxt prepare",
|
||||
"dev": "vite",
|
||||
"build": "vue-tsc -b && vite build",
|
||||
"preview": "vite preview",
|
||||
"prepare": "husky",
|
||||
"lint": "node_modules/.bin/eslint . --fix",
|
||||
"format": "node_modules/.bin/prettier --write ./"
|
||||
"format": "node_modules/.bin/prettier --write ./src/"
|
||||
},
|
||||
"dependencies": {
|
||||
"@nuxt/content": "^3.6.0",
|
||||
"@nuxt/fonts": "^0.11.4",
|
||||
"@nuxt/icon": "^1.13.0",
|
||||
"@nuxt/image": "^1.10.0",
|
||||
"@nuxtjs/robots": "^5.2.10",
|
||||
"@nuxtjs/sitemap": "^7.4.0",
|
||||
"@pinia/nuxt": "^0.5.5",
|
||||
"@tailwindcss/postcss": "^4.1.10",
|
||||
"better-sqlite3": "^11.10.0",
|
||||
"husky": "^9.1.7",
|
||||
"nuxt": "^3.17.5",
|
||||
"nuxt-schema-org": "^5.0.5",
|
||||
"@tailwindcss/vite": "^4.1.8",
|
||||
"@vueuse/head": "^2.0.0",
|
||||
"pinia": "^3.0.3",
|
||||
"swiper": "^11.2.8",
|
||||
"vue": "^3.5.16"
|
||||
"tailwindcss": "^4.1.8",
|
||||
"vue": "^3.5.13",
|
||||
"vue-router": "4"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@nuxt/eslint": "^1.4.1",
|
||||
"@nuxt/test-utils": "^3.11.3",
|
||||
"@nuxtjs/tailwindcss": "^6.11.4",
|
||||
"@types/node": "^22.0.0",
|
||||
"@tsconfig/node22": "^22.0.1",
|
||||
"@types/node": "^22.14.0",
|
||||
"@vitejs/plugin-vue": "^5.2.3",
|
||||
"@vue/eslint-config-prettier": "^10.2.0",
|
||||
"@vue/eslint-config-typescript": "^14.5.0",
|
||||
"autoprefixer": "^10.4.18",
|
||||
"eslint": "^9.29.0",
|
||||
"eslint-plugin-vue": "^10.0.0",
|
||||
"postcss": "^8.5.6",
|
||||
"@vue/tsconfig": "^0.7.0",
|
||||
"eslint": "^9.22.0",
|
||||
"eslint-plugin-vue": "~10.0.0",
|
||||
"husky": "^9.1.7",
|
||||
"jiti": "^2.4.2",
|
||||
"npm-run-all2": "^7.0.2",
|
||||
"playwright": "^1.52.0",
|
||||
"prettier": "3.5.3",
|
||||
"tailwindcss": "^3.4.17",
|
||||
"typescript": "~5.8.3",
|
||||
"vite": "^6.3.5",
|
||||
"vite-plugin-vue-devtools": "^7.7.2",
|
||||
"vue-tsc": "^2.2.8"
|
||||
}
|
||||
},
|
||||
"packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
|
||||
}
|
||||
|
@ -1,31 +0,0 @@
|
||||
<template>
|
||||
<div>
|
||||
<section class="relative z-50">
|
||||
<HeroBanner
|
||||
class="pt-28 bg-[url('/assets/img/png/bg.png')] z-40 bg-no-repeat bg-[400px] rounded-[50px] relative after:absolute after:bg-[url('/assets/img/webp/header-flowers-4.webp')] after:top-0 after:w-[418px] after:right-0 after:h-[230px] after:z-20 after:content-[''] after:bg-contain after:bg-no-repeat after:bg-right"
|
||||
/>
|
||||
<ForYouSection class="mt-40 pl-16 pr-24" />
|
||||
<YouNotAloneSection class="mt-40 pl-16 pr-24 mb-40" />
|
||||
<FeedbackSection class="mt-40 mb-52" />
|
||||
</section>
|
||||
</div>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
import FeedbackSection from "./_ui/feedbackSection/feedbackSection.vue";
|
||||
import ForYouSection from "./_ui/forYouSection/forYouSection.vue";
|
||||
import HeroBanner from "./_ui/heroBanner/heroBanner.vue";
|
||||
import YouNotAloneSection from "./_ui/youNotAloneSection/youNotAloneSection.vue";
|
||||
|
||||
useHead({
|
||||
title: "Vino Galante",
|
||||
meta: [
|
||||
{ name: "description", content: "Онлайн магазин книг автора Vino Galante" },
|
||||
],
|
||||
link: [
|
||||
{
|
||||
rel: "canonical",
|
||||
href: `https://ebook.miduway.space/`,
|
||||
},
|
||||
],
|
||||
});
|
||||
</script>
|
@ -1,104 +0,0 @@
|
||||
<template>
|
||||
<section>
|
||||
<UiHeading size="300" tag="H1" class="mb-5">
|
||||
Политика конфиденциальности
|
||||
</UiHeading>
|
||||
<UiParagraph size="300"
|
||||
>Настоящая политика конфиденциальности описывает, как мы собираем,
|
||||
используем и защищаем личную информацию, которую пользователи
|
||||
предоставляют при использовании нашего сайта.</UiParagraph
|
||||
>
|
||||
|
||||
<UiHeading size="300" tag="H2">1. Сбор информации</UiHeading>
|
||||
<UiParagraph size="300"
|
||||
>При оформлении заказа на сайте вы предоставляете персональные данные,
|
||||
которые включают:</UiParagraph
|
||||
>
|
||||
<ul class="list-disc pl-5">
|
||||
<li><UiParagraph size="300">Адрес электронной почты</UiParagraph></li>
|
||||
<li><UiParagraph size="300">Имя (по желанию)</UiParagraph></li>
|
||||
</ul>
|
||||
|
||||
<UiHeading size="300" tag="H2">2. Использование информации</UiHeading>
|
||||
<UiParagraph size="300"
|
||||
>Ваши личные данные используются исключительно для:</UiParagraph
|
||||
>
|
||||
<ul class="list-disc pl-5">
|
||||
<li>
|
||||
<UiParagraph size="300"
|
||||
>Обработки и выполнения вашего заказа.</UiParagraph
|
||||
>
|
||||
</li>
|
||||
<li>
|
||||
<UiParagraph> Связи с вами по вопросам вашего заказа. </UiParagraph>
|
||||
</li>
|
||||
<li>
|
||||
<UiParagraph size="300">
|
||||
Уведомления о важных обновлениях и новостях сайта (только если вы явно
|
||||
согласились на рассылку).</UiParagraph
|
||||
>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<UiHeading size="300" tag="H2">3. Защита личных данных</UiHeading>
|
||||
<UiParagraph size="300">
|
||||
Мы предпринимаем необходимые меры для защиты ваших личных данных от
|
||||
несанкционированного доступа, изменения, разглашения или уничтожения.
|
||||
Доступ к личным данным имеют только сотрудники, непосредственно
|
||||
участвующие в обработке заказов.
|
||||
</UiParagraph>
|
||||
|
||||
<UiHeading size="300" tag="H2"
|
||||
>4. Передача информации третьим лицам</UiHeading
|
||||
>
|
||||
<UiParagraph size="300">
|
||||
Мы не передаём ваши личные данные третьим лицам, за исключением случаев,
|
||||
предусмотренных законодательством Российской Федерации.
|
||||
</UiParagraph>
|
||||
|
||||
<UiHeading size="300" tag="H2">5. Cookies (Куки-файлы)</UiHeading>
|
||||
<UiParagraph size="300">
|
||||
Мы используем файлы cookie, чтобы улучшить ваш пользовательский опыт. Вы
|
||||
можете отключить файлы cookie в настройках вашего браузера, однако это
|
||||
может ограничить доступ к некоторым функциям сайта.
|
||||
</UiParagraph>
|
||||
|
||||
<UiHeading size="300" tag="H2"
|
||||
>6. Изменения в политике конфиденциальности</UiHeading
|
||||
>
|
||||
<UiParagraph size="300">
|
||||
Мы можем периодически обновлять настоящую политику конфиденциальности. Об
|
||||
изменениях мы уведомим вас, разместив новую версию политики на данной
|
||||
странице.
|
||||
</UiParagraph>
|
||||
|
||||
<UiHeading size="300" tag="H2">7. Ваше согласие</UiHeading>
|
||||
<UiParagraph size="300"
|
||||
>Используя наш сайт, вы соглашаетесь с условиями данной политики
|
||||
конфиденциальности.</UiParagraph
|
||||
>
|
||||
<UiParagraph size="300">
|
||||
Если у вас возникнут вопросы или пожелания относительно обработки ваших
|
||||
персональных данных, пожалуйста, свяжитесь с нами по электронной почте:
|
||||
<a href="mailto:vinogalante@yandex.ru">vinogalante@yandex.ru</a>.
|
||||
</UiParagraph>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import UiHeading from "@/components/Typography/UiHeading.vue";
|
||||
import UiParagraph from "@/components/Typography/UiParagraph.vue";
|
||||
|
||||
useHead({
|
||||
title: "Поликита конфиденциальности | Vino Galante",
|
||||
meta: [
|
||||
{ name: "description", content: "Онлайн магазин книг автора Vino Galante" },
|
||||
],
|
||||
link: [
|
||||
{
|
||||
rel: "canonical",
|
||||
href: `https://ebook.miduway.space/privacy`,
|
||||
},
|
||||
],
|
||||
});
|
||||
</script>
|
@ -1,5 +0,0 @@
|
||||
export default {
|
||||
plugins: {
|
||||
"@tailwindcss/postcss": {},
|
||||
}
|
||||
}
|
Before Width: | Height: | Size: 4.2 KiB |
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
1
public/vite.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg>
|
After Width: | Height: | Size: 1.5 KiB |
@ -1,3 +0,0 @@
|
||||
{
|
||||
"extends": "../.nuxt/tsconfig.server.json"
|
||||
}
|
10
src/App.vue
Normal file
@ -0,0 +1,10 @@
|
||||
<template>
|
||||
<UiLayout>
|
||||
<RouterView />
|
||||
</UiLayout>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import UiLayout from './layout/UiLayout.vue'
|
||||
import { RouterView } from 'vue-router'
|
||||
</script>
|
Before Width: | Height: | Size: 77 KiB After Width: | Height: | Size: 77 KiB |
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 206 KiB After Width: | Height: | Size: 206 KiB |
Before Width: | Height: | Size: 251 KiB After Width: | Height: | Size: 251 KiB |
Before Width: | Height: | Size: 409 KiB After Width: | Height: | Size: 409 KiB |
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 40 KiB |
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 50 KiB |
Before Width: | Height: | Size: 69 KiB After Width: | Height: | Size: 69 KiB |
Before Width: | Height: | Size: 613 KiB After Width: | Height: | Size: 613 KiB |
Before Width: | Height: | Size: 104 KiB After Width: | Height: | Size: 104 KiB |
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 21 KiB |
Before Width: | Height: | Size: 496 B After Width: | Height: | Size: 496 B |
@ -11,7 +11,7 @@
|
||||
|
||||
<script setup lang="ts">
|
||||
import { toRefs, computed } from 'vue'
|
||||
import { colorVariants } from './UiButton.params.js'
|
||||
import { colorVariants } from './UiButton.params.ts'
|
||||
|
||||
const props = defineProps({
|
||||
tag: {
|
9
src/config/router/index.ts
Normal file
@ -0,0 +1,9 @@
|
||||
import { createRouter, createWebHistory } from 'vue-router'
|
||||
import routes from './routes'
|
||||
|
||||
const router = createRouter({
|
||||
history: createWebHistory(import.meta.env.VITE_URL),
|
||||
routes,
|
||||
})
|
||||
|
||||
export default router
|
43
src/config/router/routes.ts
Normal file
@ -0,0 +1,43 @@
|
||||
import type { Component } from 'vue'
|
||||
|
||||
interface ChlidrenRoute {
|
||||
path: string
|
||||
name: string
|
||||
component: () => Promise<Component>
|
||||
props?: boolean
|
||||
}
|
||||
interface Route {
|
||||
path: string
|
||||
name: string
|
||||
component: () => Promise<Component>
|
||||
props?: boolean
|
||||
children?: ChlidrenRoute[]
|
||||
}
|
||||
|
||||
const routes: Route[] = [
|
||||
{
|
||||
path: '/',
|
||||
name: 'home',
|
||||
component: () => import('@/pages/mainPage/indexPage.vue'),
|
||||
},
|
||||
{
|
||||
path: '/books/:slug',
|
||||
name: 'book-detail',
|
||||
component: () => import('@/pages/books/_slug/indexBookPage.vue'),
|
||||
props: true,
|
||||
children: [
|
||||
{
|
||||
path: ':titlesSlug',
|
||||
name: 'book-titles',
|
||||
component: () => import('@/pages/books/_slug/_titlesSlug/indexTitlesPage.vue'),
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
path: '/privacy',
|
||||
name: 'privacy',
|
||||
component: () => import('@/pages/privacy/privacyPage.vue'),
|
||||
},
|
||||
]
|
||||
|
||||
export default routes
|
@ -25,7 +25,7 @@
|
||||
<script setup lang="ts">
|
||||
import UiParagraph from '@/components/Typography/UiParagraph.vue'
|
||||
import UiNav from '@/components/UiNav/UiNav.vue'
|
||||
import { footerNavigation, refLitres } from '@/layouts/UiFooter/_data'
|
||||
import { footerNavigation, refLitres } from '@/layout/UiFooter/_data'
|
||||
import { useRoute } from 'vue-router'
|
||||
|
||||
const route = useRoute()
|
3
src/layout/UiFooter/_data/index.ts
Normal file
@ -0,0 +1,3 @@
|
||||
export { default as footerNavigation } from '@/layout/UiFooter/_data/footer-navigation.data'
|
||||
|
||||
export { default as refLitres } from '@/layout/UiFooter/_data/ref-litres.data'
|
1
src/layout/UiHeader/_data/index.ts
Normal file
@ -0,0 +1 @@
|
||||
export { default as headerNavigation } from '@/layout/UiHeader/_data/header-navigation.data'
|
@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div
|
||||
class="min-h-svh overflow-x-hidden lato-regular relative overflow-visible before:content-[''] before:absolute before:bottom-0 before:h-full before:w-full before:bg-[url(/assets/img/webp/footer-flowers.webp)] before:bg-no-repeat before:bg-bottom before:bg-contain before:z-40"
|
||||
class="min-h-svh overflow-x-hidden lato-regular relative overflow-visible before:content-[''] before:absolute before:bottom-0 before:h-[520px] before:w-full before:bg-[url(/src/assets/img/webp/footer-flowers.webp)] before:bg-no-repeat before:bg-bottom before:bg-cover before:z-40"
|
||||
:class="
|
||||
route.path === '/books/1' || route.path === '/books/2'
|
||||
? 'bg-[linear-gradient(135deg,rgba(17,17,30,1)_10%,rgba(183,32,76,1)_170%)]'
|
||||
@ -9,15 +9,15 @@
|
||||
>
|
||||
<div
|
||||
v-if="route.path === '/'"
|
||||
class="relative z-10 after:content-[''] after:absolute after:top-0 after:right-0 after:w-[820px] after:h-[535px] after:bg-[url(/assets/img/webp/gradient.webp)] after:bg-no-repeat after:bg-[right_top] after:bg-contain"
|
||||
class="relative z-10 after:content-[''] after:absolute after:top-0 after:right-0 after:w-[820px] after:h-[535px] after:bg-[url(/src/assets/img/webp/gradient.webp)] after:bg-no-repeat after:bg-[right_top] after:bg-contain"
|
||||
/>
|
||||
<div
|
||||
v-if="route.path === '/'"
|
||||
class="relative z-20 after:content-[''] after:absolute after:top-0 after:right-0 after:w-[1120px] after:h-[1800px] after:bg-[url(/assets/img/webp/group-flowers.webp)] after:bg-no-repeat after:bg-[right_top] after:bg-cover"
|
||||
class="relative z-20 after:content-[''] after:absolute after:top-0 after:right-0 after:w-[1120px] after:h-[1800px] after:bg-[url(/src/assets/img/webp/group-flowers.webp)] after:bg-no-repeat after:bg-[right_top] after:bg-cover"
|
||||
/>
|
||||
<div
|
||||
v-if="route.path === '/'"
|
||||
class="relative z-40 before:content-[''] before:absolute before:top-0 before:left-0 before:w-[1120px] before:h-[1000px] before:bg-[url(/assets/img/webp/hero-flowers.webp)] before:bg-no-repeat before:bg-left before:bg-contain"
|
||||
class="relative z-40 before:content-[''] before:absolute before:top-0 before:left-0 before:w-[1120px] before:h-[1000px] before:bg-[url(/src/assets/img/webp/hero-flowers.webp)] before:bg-no-repeat before:bg-left before:bg-contain"
|
||||
/>
|
||||
<UiHeader class="relative z-50" />
|
||||
<UiMain class="!min-h-[1200px] text-primary relative">
|
16
src/main.ts
Normal file
@ -0,0 +1,16 @@
|
||||
import { createApp } from 'vue'
|
||||
import { createPinia } from 'pinia'
|
||||
import { createHead } from '@vueuse/head'
|
||||
|
||||
import './style.css'
|
||||
import App from './App.vue'
|
||||
import router from '@/config/router/index'
|
||||
|
||||
const app = createApp(App)
|
||||
const head = createHead()
|
||||
|
||||
app.use(head)
|
||||
app.use(createPinia())
|
||||
app.use(router)
|
||||
|
||||
app.mount('#app')
|
@ -1,20 +1,12 @@
|
||||
<template>
|
||||
<div v-if="titles" class="relative z-50 min-h-screen text-white mb-[208px]">
|
||||
<section class="flex flex-col relative z-40 mt-40 ml-18">
|
||||
<UiHeading
|
||||
tag="H1"
|
||||
class="whitespace-pre-line [&]:font-normal mb-10 -ml-5"
|
||||
size="500"
|
||||
>
|
||||
<UiHeading tag="H1" class="whitespace-pre-line [&]:font-normal mb-10 -ml-5" size="500">
|
||||
{{ titles.title }}
|
||||
</UiHeading>
|
||||
|
||||
<div class="flex flex-col gap-6">
|
||||
<div
|
||||
v-for="(section, index) in titles.sections"
|
||||
:key="index"
|
||||
class="flex flex-col gap-4"
|
||||
>
|
||||
<div v-for="(section, index) in titles.sections" :key="index" class="flex flex-col gap-4">
|
||||
<!-- Main section title -->
|
||||
<UiHeading tag="H2" size="300" class="text-three [&]:font-normal">
|
||||
{{ section.title }}
|
||||
@ -43,27 +35,14 @@
|
||||
</UiHeading>
|
||||
</div>
|
||||
<!-- Regular subsection -->
|
||||
<UiHeading
|
||||
v-else
|
||||
tag="H3"
|
||||
size="300"
|
||||
class="[&]:text-gray-200 [&]:font-normal"
|
||||
>
|
||||
<UiHeading v-else tag="H3" size="300" class="[&]:text-gray-200 [&]:font-normal">
|
||||
{{ subsection.title }}
|
||||
</UiHeading>
|
||||
|
||||
<!-- Items list -->
|
||||
<ul
|
||||
v-if="subsection.items"
|
||||
class="ml-6 flex flex-col gap-2 list-decimal"
|
||||
>
|
||||
<li
|
||||
v-for="(item, itemIndex) in subsection.items"
|
||||
:key="itemIndex"
|
||||
>
|
||||
<UiParagraph
|
||||
size="300"
|
||||
class="[&]:text-gray-200 [&]:font-normal"
|
||||
<ul v-if="subsection.items" class="ml-6 flex flex-col gap-2 list-decimal">
|
||||
<li v-for="(item, itemIndex) in subsection.items" :key="itemIndex">
|
||||
<UiParagraph size="300" class="[&]:text-gray-200 [&]:font-normal"
|
||||
> {{ item }}</UiParagraph
|
||||
>
|
||||
</li>
|
||||
@ -71,15 +50,8 @@
|
||||
|
||||
<!-- Nested subsections -->
|
||||
<div v-if="subsection.subsections" class="flex flex-col gap-2">
|
||||
<div
|
||||
v-for="(nestedSub, nestedIndex) in subsection.subsections"
|
||||
:key="nestedIndex"
|
||||
>
|
||||
<UiHeading
|
||||
tag="H4"
|
||||
size="300"
|
||||
class="[&]:text-gray-200 [&]:font-normal"
|
||||
>
|
||||
<div v-for="(nestedSub, nestedIndex) in subsection.subsections" :key="nestedIndex">
|
||||
<UiHeading tag="H4" size="300" class="[&]:text-gray-200 [&]:font-normal">
|
||||
{{ nestedSub.title }}
|
||||
</UiHeading>
|
||||
</div>
|
||||
@ -94,61 +66,63 @@
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { ref, computed, watch } from "vue";
|
||||
import { useRoute } from "vue-router";
|
||||
import UiHeading from "@/components/Typography/UiHeading.vue";
|
||||
import UiParagraph from "@/components/Typography/UiParagraph.vue";
|
||||
// import { useHead } from '@vueuse/head'
|
||||
import { ref, computed, watch } from 'vue'
|
||||
import { useRoute } from 'vue-router'
|
||||
import UiHeading from '@/components/Typography/UiHeading.vue'
|
||||
import UiParagraph from '@/components/Typography/UiParagraph.vue'
|
||||
import { useHead } from '@vueuse/head'
|
||||
|
||||
interface SubsectionTitle {
|
||||
text: string;
|
||||
img?: string;
|
||||
text: string
|
||||
img?: string
|
||||
}
|
||||
|
||||
interface Subsection {
|
||||
title: string | SubsectionTitle;
|
||||
items?: string[];
|
||||
title: string | SubsectionTitle
|
||||
items?: string[]
|
||||
subsections?: Array<{
|
||||
title: string;
|
||||
}>;
|
||||
title: string
|
||||
}>
|
||||
}
|
||||
|
||||
interface Section {
|
||||
title: string;
|
||||
subsections?: Subsection[];
|
||||
title: string
|
||||
subsections?: Subsection[]
|
||||
}
|
||||
|
||||
interface TitlesData {
|
||||
title: string;
|
||||
titleMeta: string;
|
||||
sections: Section[];
|
||||
title: string
|
||||
titleMeta: string
|
||||
sections: Section[]
|
||||
}
|
||||
|
||||
const route = useRoute();
|
||||
const route = useRoute()
|
||||
|
||||
const currentTitlesData = ref<TitlesData | null>(null);
|
||||
const currentTitlesData = ref<TitlesData | null>(null)
|
||||
|
||||
const titles = computed(() => currentTitlesData.value);
|
||||
const titles = computed(() => currentTitlesData.value)
|
||||
|
||||
const loadTitlesData = async (slug: string) => {
|
||||
try {
|
||||
const module = await import(`./_data/${slug}.json`);
|
||||
currentTitlesData.value = module.default as TitlesData;
|
||||
const module = await import(`./_data/${slug}.json`)
|
||||
currentTitlesData.value = module.default as TitlesData
|
||||
} catch (error) {
|
||||
console.error(`Ошибка при загрузке содержания с slug '${slug}':`, error);
|
||||
currentTitlesData.value = null;
|
||||
console.error(`Ошибка при загрузке содержания с slug '${slug}':`, error)
|
||||
currentTitlesData.value = null
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
watch(
|
||||
() => route.params.titlesSlug,
|
||||
async (newSlug) => {
|
||||
console.log('Route params changed:', route.params)
|
||||
console.log('New titlesSlug:', newSlug)
|
||||
if (newSlug) {
|
||||
await loadTitlesData(newSlug as string);
|
||||
await loadTitlesData(newSlug as string)
|
||||
}
|
||||
},
|
||||
{ immediate: true }
|
||||
);
|
||||
{ immediate: true },
|
||||
)
|
||||
|
||||
watch(titles, (newTitles) => {
|
||||
if (newTitles) {
|
||||
@ -156,17 +130,17 @@ watch(titles, (newTitles) => {
|
||||
title: `${newTitles.titleMeta} | Vino Galante`,
|
||||
meta: [
|
||||
{
|
||||
name: "description",
|
||||
content: "Содержание книги Vino Galante",
|
||||
name: 'description',
|
||||
content: 'Содержание книги Vino Galante',
|
||||
},
|
||||
],
|
||||
link: [
|
||||
{
|
||||
rel: "canonical",
|
||||
rel: 'canonical',
|
||||
href: `https://ebook.miduway.space/books/${route.params.slug}/${route.params.titlesSlug}`,
|
||||
},
|
||||
],
|
||||
});
|
||||
})
|
||||
}
|
||||
});
|
||||
})
|
||||
</script>
|
@ -4,28 +4,19 @@
|
||||
<template v-if="!route.params.titlesSlug">
|
||||
<!--верхний блок-->
|
||||
<section
|
||||
class="flex flex-row relative z-40 before:content-[''] before:absolute before:top-[-140px] before:bg-top before:left-0 before:w-[1280px] before:h-[1000px] before:bg-[url(/assets/img/webp/vino-galante.webp)] before:bg-no-repeat before:bg-contain mt-40"
|
||||
class="flex flex-row relative z-40 before:content-[''] before:absolute before:top-[-140px] before:bg-top before:left-0 before:w-[1200px] before:h-[1000px] before:bg-[url(/src/assets/img/webp/vino-galante.webp)] before:bg-no-repeat before:bg-contain mt-40"
|
||||
>
|
||||
<!--левый блок контента-->
|
||||
<section class="relative top-[-20px] min-w-[570px]">
|
||||
<div class="flex flex-col items-center">
|
||||
<img
|
||||
:src="book.img"
|
||||
:alt="book.buttonText"
|
||||
width="100%"
|
||||
height="100%"
|
||||
/>
|
||||
<img :src="book.img" :alt="book.buttonText" width="100%" height="100%" />
|
||||
</div>
|
||||
</section>
|
||||
<!--правый блок контента-->
|
||||
<section>
|
||||
<div class="w-11/12 h-full flex flex-col justify-start">
|
||||
<div>
|
||||
<UiHeading
|
||||
tag="H1"
|
||||
class="whitespace-pre-line [&]:font-bold"
|
||||
size="300"
|
||||
>
|
||||
<UiHeading tag="H1" class="whitespace-pre-line [&]:font-bold" size="300">
|
||||
{{ book.title }}
|
||||
</UiHeading>
|
||||
<UiParagraph class="mb-10" size="250">
|
||||
@ -42,13 +33,11 @@
|
||||
</section>
|
||||
</section>
|
||||
<!--средний блок-->
|
||||
<section class="flex flex-row items-center ml-20 justify-between">
|
||||
<section class="flex flex-row items-center ml-18 justify-between">
|
||||
<!--левый-->
|
||||
<div class="flex flex-col items-center min-h-[310px]">
|
||||
<div class="flex flex-row">
|
||||
<UiParagraph class="[&]:text-6xl"
|
||||
>{{ book.price }} </UiParagraph
|
||||
>
|
||||
<UiParagraph class="[&]:text-6xl">{{ book.price }} </UiParagraph>
|
||||
<img src="/img/svg/books/ruble.svg" alt="ruble" />
|
||||
</div>
|
||||
<div class="mr-10 flex items-center flex-col gap-3">
|
||||
@ -64,9 +53,7 @@
|
||||
<div class="min-h-[310px]">
|
||||
<!--о книге-->
|
||||
<div>
|
||||
<ul
|
||||
class="flex flex-row mr-14 items-center justify-between lg:whitespace-nowrap"
|
||||
>
|
||||
<ul class="flex flex-row mr-14 items-center justify-between lg:whitespace-nowrap">
|
||||
<li class="flex flex-row mr-14 gap-3 items-center">
|
||||
<img
|
||||
src="/img/svg/books/book-pages.svg"
|
||||
@ -105,77 +92,50 @@
|
||||
|
||||
<!--навигация по книге-->
|
||||
<div class="mt-24">
|
||||
<ul
|
||||
class="flex flex-row mr-32 items-end justify-between lg:whitespace-nowrap"
|
||||
>
|
||||
<li class="flex flex-row items-center">
|
||||
<NuxtLink
|
||||
to="#"
|
||||
class="flex flex-col items-center cursor-pointer"
|
||||
>
|
||||
<div class="w-[62px] h-[58px]">
|
||||
<img
|
||||
src="/img/svg/books/read.svg"
|
||||
alt="Читай отрывок"
|
||||
width="62"
|
||||
height="53"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<UiParagraph size="250" as="span">
|
||||
Читай отрывок
|
||||
</UiParagraph>
|
||||
</NuxtLink>
|
||||
<ul class="flex flex-row mr-32 items-end justify-between lg:whitespace-nowrap">
|
||||
<li class="flex flex-row gap-3 items-center">
|
||||
<RouterLink to="#" class="flex flex-col items-center gap-3 cursor-pointer">
|
||||
<img src="/img/svg/books/read.svg" alt="Читай отрывок" width="50" height="50" />
|
||||
<UiParagraph size="250" as="span"> Читай отрывок </UiParagraph>
|
||||
</RouterLink>
|
||||
</li>
|
||||
<li class="flex flex-row gap-3 items-center">
|
||||
<NuxtLink
|
||||
to="#"
|
||||
class="flex flex-col items-center gap-4 cursor-pointer"
|
||||
>
|
||||
<div class="w-[62px] h-[53px]">
|
||||
<img
|
||||
src="/img/svg/books/download.svg"
|
||||
alt="Скачай отрывок"
|
||||
width="62"
|
||||
height="53"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<UiParagraph size="250" as="span">
|
||||
Скачай отрывок
|
||||
</UiParagraph>
|
||||
</NuxtLink>
|
||||
<RouterLink to="#" class="flex flex-col items-center gap-3 cursor-pointer">
|
||||
<img
|
||||
src="/img/svg/books/download.svg"
|
||||
alt="Скачай отрывок"
|
||||
width="50"
|
||||
height="50"
|
||||
/>
|
||||
<UiParagraph size="250" as="span"> Скачай отрывок </UiParagraph>
|
||||
</RouterLink>
|
||||
</li>
|
||||
<li class="flex flex-row gap-3 items-center">
|
||||
<NuxtLink
|
||||
:to="`/books/${route.params.slug}/${book.hrefTitles}`"
|
||||
<RouterLink
|
||||
:to="{
|
||||
name: 'book-titles',
|
||||
params: {
|
||||
slug: route.params.slug,
|
||||
titlesSlug: book.hrefTitles,
|
||||
},
|
||||
}"
|
||||
class="flex flex-col items-center gap-3 cursor-pointer"
|
||||
>
|
||||
<div class="w-[62px] h-[53px]">
|
||||
<img
|
||||
src="/img/svg/books/down2.svg"
|
||||
alt="Содержание"
|
||||
width="62"
|
||||
height="53"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<img src="/img/svg/books/titles.svg" alt="Содержание" width="50" height="50" />
|
||||
<UiParagraph size="250" as="span"> Содержание </UiParagraph>
|
||||
</NuxtLink>
|
||||
</RouterLink>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<!--нижний блок-->
|
||||
<section class="ml-20 mt-32">
|
||||
<section class="ml-18 mt-32">
|
||||
<div>
|
||||
<UiHeading tag="H2" size="300" class="text-three">
|
||||
Что ты узнаешь
|
||||
</UiHeading>
|
||||
<UiHeading tag="H2" size="300" class="text-three"> Что ты узнаешь </UiHeading>
|
||||
<ul class="flex mt-20 flex-row items-center justify-between">
|
||||
<li
|
||||
class="flex flex-col-reverse justify-end w-32 gap-4 h-64 items-center transition-transform transform hover:scale-110"
|
||||
class="flex flex-col-reverse justify-end w-38 gap-4 h-64 items-center transition-transform transform hover:scale-110"
|
||||
v-for="({ svg, text }, index) in book.whoUKnows"
|
||||
:key="index"
|
||||
>
|
||||
@ -188,76 +148,74 @@
|
||||
</div>
|
||||
<div class="flex justify-center text-center mt-36">
|
||||
<UiParagraph>
|
||||
Или купи на ЛитРес - <br /><a
|
||||
class="text-three"
|
||||
:href="book.href"
|
||||
target="_blank"
|
||||
Или купи на ЛитРес - <br /><a class="text-three" :href="book.href" target="_blank"
|
||||
>Реферальная ссылка для поддержки автора</a
|
||||
>
|
||||
</UiParagraph>
|
||||
</div>
|
||||
</section>
|
||||
</template>
|
||||
<NuxtPage />
|
||||
<RouterView />
|
||||
</div>
|
||||
</template>
|
||||
<div v-else class="text-white text-center py-20">Книга не найдена.</div>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { ref, computed, watch } from "vue";
|
||||
import { useRoute } from "#app";
|
||||
import UiHeading from "@/components/Typography/UiHeading.vue";
|
||||
import UiParagraph from "@/components/Typography/UiParagraph.vue";
|
||||
import UiButton from "@/components/UiButton/UiButton.vue";
|
||||
import { ref, computed, watch } from 'vue'
|
||||
import { useRoute, RouterView } from 'vue-router'
|
||||
import UiHeading from '@/components/Typography/UiHeading.vue'
|
||||
import UiParagraph from '@/components/Typography/UiParagraph.vue'
|
||||
import UiButton from '@/components/UiButton/UiButton.vue'
|
||||
import { useHead } from '@vueuse/head'
|
||||
|
||||
interface BookDetail {
|
||||
id: number;
|
||||
title: string;
|
||||
metaTitle: string;
|
||||
subtitle: string;
|
||||
subdesc: string;
|
||||
description: string;
|
||||
img: string;
|
||||
price: string;
|
||||
buttonText: string;
|
||||
buttonFormat: string;
|
||||
pages: string;
|
||||
illust: string;
|
||||
format: string;
|
||||
id: number
|
||||
title: string
|
||||
metaTitle: string
|
||||
subtitle: string
|
||||
subdesc: string
|
||||
description: string
|
||||
img: string
|
||||
price: string
|
||||
buttonText: string
|
||||
buttonFormat: string
|
||||
pages: string
|
||||
illust: string
|
||||
format: string
|
||||
whoUKnows: Array<{
|
||||
text: string;
|
||||
svg: string;
|
||||
}>;
|
||||
href: string;
|
||||
hrefTitles: string;
|
||||
text: string
|
||||
svg: string
|
||||
}>
|
||||
href: string
|
||||
hrefTitles: string
|
||||
}
|
||||
|
||||
const route = useRoute();
|
||||
const route = useRoute()
|
||||
|
||||
const currentBookData = ref<BookDetail | null>(null);
|
||||
const currentBookData = ref<BookDetail | null>(null)
|
||||
|
||||
const book = computed(() => currentBookData.value);
|
||||
const book = computed(() => currentBookData.value)
|
||||
|
||||
const loadBookData = async (slug: string) => {
|
||||
try {
|
||||
const module = await import(`./_data/${slug}.json`);
|
||||
currentBookData.value = module.default as BookDetail;
|
||||
const module = await import(`./_data/${slug}.json`)
|
||||
currentBookData.value = module.default as BookDetail
|
||||
} catch (error) {
|
||||
console.error(`Ошибка при загрузке книги с slug '${slug}':`, error);
|
||||
currentBookData.value = null;
|
||||
console.error(`Ошибка при загрузке книги с slug '${slug}':`, error)
|
||||
currentBookData.value = null
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
watch(
|
||||
() => route.params.slug,
|
||||
async (newSlug) => {
|
||||
if (newSlug) {
|
||||
await loadBookData(newSlug as string);
|
||||
await loadBookData(newSlug as string)
|
||||
}
|
||||
},
|
||||
{ immediate: true }
|
||||
);
|
||||
{ immediate: true },
|
||||
)
|
||||
|
||||
watch(book, (newBook) => {
|
||||
if (newBook) {
|
||||
@ -265,17 +223,17 @@ watch(book, (newBook) => {
|
||||
title: `${newBook.metaTitle} | Vino Galante`,
|
||||
meta: [
|
||||
{
|
||||
name: "description",
|
||||
content: "Онлайн магазин книг автора Vino Galante",
|
||||
name: 'description',
|
||||
content: 'Онлайн магазин книг автора Vino Galante',
|
||||
},
|
||||
],
|
||||
link: [
|
||||
{
|
||||
rel: "canonical",
|
||||
rel: 'canonical',
|
||||
href: `https://ebook.miduway.space/books/${route.params.slug}`,
|
||||
},
|
||||
],
|
||||
});
|
||||
})
|
||||
}
|
||||
});
|
||||
})
|
||||
</script>
|
@ -30,13 +30,13 @@
|
||||
Это поможет другим и вдохновит на новые главы. <br />
|
||||
Спасибо!
|
||||
</UiParagraph>
|
||||
<UiButton class="mt-10" variants="secondary">Написать отзыв</UiButton>
|
||||
<UiButton @click="console.log(1)" class="mt-10" variants="secondary">Написать отзыв</UiButton>
|
||||
</div>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { onMounted } from 'vue'
|
||||
import { onMounted } from 'vue' // Добавляем onMounted
|
||||
import Swiper from 'swiper'
|
||||
import { Pagination, Autoplay } from 'swiper/modules'
|
||||
import UiHeading from '@/components/Typography/UiHeading.vue'
|
@ -2,7 +2,7 @@
|
||||
<section>
|
||||
<div class="relative z-50">
|
||||
<img
|
||||
src="/assets/img/webp/hero-banner-content.webp"
|
||||
src="/src/assets/img/webp/hero-banner-content.webp"
|
||||
alt="Книги"
|
||||
width="100%"
|
||||
height="100%"
|
@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<section class="flex flex-row">
|
||||
<div class="lg:w-5/12 pl-5 pr-5 shadow-md bg-[url('/assets/img/png/shadow.png')]">
|
||||
<div class="lg:w-5/12 pl-5 pr-5 shadow-md bg-[url('/src/assets/img/png/shadow.png')]">
|
||||
<UiHeading tag="H2" size="300" class="text-three mb-4 mt-5">
|
||||
💔 Ты не одна.
|
||||
<br />Я знаю, через что ты<br />
|
||||
@ -21,13 +21,7 @@
|
||||
>
|
||||
</div>
|
||||
<div class="lg:w-7/12">
|
||||
<NuxtImg
|
||||
src="/img/webp/meetingAlone.webp"
|
||||
alt="meeting"
|
||||
width="100%"
|
||||
height="100%"
|
||||
loading="lazy"
|
||||
/>
|
||||
<img alt="meeting" width="100%" height="100%" src="/img/webp/meetingAlone.webp" />
|
||||
</div>
|
||||
</section>
|
||||
</template>
|
31
src/pages/mainPage/indexPage.vue
Normal file
@ -0,0 +1,31 @@
|
||||
<template>
|
||||
<div>
|
||||
<section class="relative z-50">
|
||||
<HeroBanner
|
||||
class="pt-28 bg-[url('/src/assets/img/png/bg.png')] z-40 bg-no-repeat bg-[400px] rounded-[50px] relative after:absolute after:bg-[url('/src/assets/img/webp/header-flowers-4.webp')] after:top-0 after:w-[418px] after:right-0 after:h-[230px] after:z-20 after:content-[''] after:bg-contain after:bg-no-repeat after:bg-right"
|
||||
/>
|
||||
<ForYouSection class="mt-40 pl-16 pr-24" />
|
||||
<YouNotAloneSection class="mt-40 pl-16 pr-24 mb-40" />
|
||||
<FeedbackSection class="mt-40 mb-52" />
|
||||
</section>
|
||||
</div>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
import FeedbackSection from './_ui/feedbackSection/feedbackSection.vue'
|
||||
import ForYouSection from './_ui/forYouSection/forYouSection.vue'
|
||||
import HeroBanner from './_ui/heroBanner/heroBanner.vue'
|
||||
import YouNotAloneSection from './_ui/youNotAloneSection/youNotAloneSection.vue'
|
||||
|
||||
import { useHead } from '@vueuse/head'
|
||||
|
||||
useHead({
|
||||
title: 'Vino Galante',
|
||||
meta: [{ name: 'description', content: 'Онлайн магазин книг автора Vino Galante' }],
|
||||
link: [
|
||||
{
|
||||
rel: 'canonical',
|
||||
href: `https://ebook.miduway.space/`,
|
||||
},
|
||||
],
|
||||
})
|
||||
</script>
|