commit cd7a18b63fa8a3473b7f4429704a95b1bff1aab7 Author: feie9456 Date: Mon Jul 7 16:58:26 2025 +0800 init diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a547bf3 --- /dev/null +++ b/.gitignore @@ -0,0 +1,24 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +*.local + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..a7cea0b --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,3 @@ +{ + "recommendations": ["Vue.volar"] +} diff --git a/README.md b/README.md new file mode 100644 index 0000000..33895ab --- /dev/null +++ b/README.md @@ -0,0 +1,5 @@ +# Vue 3 + TypeScript + Vite + +This template should help get you started developing with Vue 3 and TypeScript in Vite. The template uses Vue 3 ` + + + \ No newline at end of file diff --git a/package.json b/package.json new file mode 100644 index 0000000..af1633b --- /dev/null +++ b/package.json @@ -0,0 +1,28 @@ +{ + "name": "loreal-game", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "vue-tsc -b && vite build", + "preview": "vite preview" + }, + "dependencies": { + "@tailwindcss/vite": "^4.1.11", + "gsap": "^3.13.0", + "normalize.css": "^8.0.1", + "vue": "^3.5.17" + }, + "devDependencies": { + "@vitejs/plugin-vue": "^6.0.0", + "@vue/tsconfig": "^0.7.0", + "autoprefixer": "^10.4.21", + "postcss": "^8.5.6", + "sass-embedded": "^1.89.2", + "tailwindcss": "^4.1.11", + "typescript": "~5.8.3", + "vite": "^7.0.0", + "vue-tsc": "^2.2.10" + } +} diff --git a/public/vite.svg b/public/vite.svg new file mode 100644 index 0000000..e7b8dfb --- /dev/null +++ b/public/vite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/App.vue b/src/App.vue new file mode 100644 index 0000000..836a738 --- /dev/null +++ b/src/App.vue @@ -0,0 +1,29 @@ + + + + + diff --git a/src/assets/fonts/ElanITCStd-Book.woff2 b/src/assets/fonts/ElanITCStd-Book.woff2 new file mode 100644 index 0000000..1ffb2db Binary files /dev/null and b/src/assets/fonts/ElanITCStd-Book.woff2 differ diff --git a/src/assets/fonts/ElanITCStdBook.otf b/src/assets/fonts/ElanITCStdBook.otf new file mode 100644 index 0000000..fc526ae Binary files /dev/null and b/src/assets/fonts/ElanITCStdBook.otf differ diff --git a/src/assets/fonts/stylesheet.css b/src/assets/fonts/stylesheet.css new file mode 100644 index 0000000..65053aa --- /dev/null +++ b/src/assets/fonts/stylesheet.css @@ -0,0 +1,8 @@ +@font-face { + font-family: 'Elan ITC Std'; + src: url('ElanITCStd-Book.woff2') format('woff2'); + font-weight: normal; + font-style: normal; + font-display: swap; +} + diff --git a/src/assets/index.ts b/src/assets/index.ts new file mode 100644 index 0000000..78a7d84 --- /dev/null +++ b/src/assets/index.ts @@ -0,0 +1,17 @@ +export default { + "标准logo": new URL('./标准 logo.png', import.meta.url).href, + "p1": { + "奥莱": new URL('./p1/奥莱.png', import.meta.url).href, + "博物馆": new URL('./p1/博物馆.png', import.meta.url).href, + "大北区": new URL('./p1/大北区.png', import.meta.url).href, + "大东区": new URL('./p1/大东区.png', import.meta.url).href, + "大南区&免税": new URL('./p1/大南区&免税.png', import.meta.url).href, + "大西区": new URL('./p1/大西区.png', import.meta.url).href, + "弹性福利之旅": new URL('./p1/弹性福利之旅.png', import.meta.url).href, + "箭头": new URL('./p1/箭头.png', import.meta.url).href, + "蓝天": new URL('./p1/蓝天.png', import.meta.url).href, + "太阳": new URL('./p1/太阳.png', import.meta.url).href, + "Flexible benefits": new URL('./p1/Flexible benefits.png', import.meta.url).href, + "Tour": new URL('./p1/Tour.png', import.meta.url).href, + } +} diff --git a/src/assets/p1/Flexible benefits.png b/src/assets/p1/Flexible benefits.png new file mode 100644 index 0000000..02fe738 Binary files /dev/null and b/src/assets/p1/Flexible benefits.png differ diff --git a/src/assets/p1/Tour.png b/src/assets/p1/Tour.png new file mode 100644 index 0000000..b09eda5 Binary files /dev/null and b/src/assets/p1/Tour.png differ diff --git a/src/assets/p1/博物馆.png b/src/assets/p1/博物馆.png new file mode 100644 index 0000000..baf0aa8 Binary files /dev/null and b/src/assets/p1/博物馆.png differ diff --git a/src/assets/p1/大东区.png b/src/assets/p1/大东区.png new file mode 100644 index 0000000..c6b3cc0 Binary files /dev/null and b/src/assets/p1/大东区.png differ diff --git a/src/assets/p1/大北区.png b/src/assets/p1/大北区.png new file mode 100644 index 0000000..d66b93e Binary files /dev/null and b/src/assets/p1/大北区.png differ diff --git a/src/assets/p1/大南区&免税.png b/src/assets/p1/大南区&免税.png new file mode 100644 index 0000000..2edee14 Binary files /dev/null and b/src/assets/p1/大南区&免税.png differ diff --git a/src/assets/p1/大西区.png b/src/assets/p1/大西区.png new file mode 100644 index 0000000..be516f5 Binary files /dev/null and b/src/assets/p1/大西区.png differ diff --git a/src/assets/p1/太阳.png b/src/assets/p1/太阳.png new file mode 100644 index 0000000..b9136d3 Binary files /dev/null and b/src/assets/p1/太阳.png differ diff --git a/src/assets/p1/太阳脸.png b/src/assets/p1/太阳脸.png new file mode 100644 index 0000000..572a6e9 Binary files /dev/null and b/src/assets/p1/太阳脸.png differ diff --git a/src/assets/p1/奥莱.png b/src/assets/p1/奥莱.png new file mode 100644 index 0000000..893dee7 Binary files /dev/null and b/src/assets/p1/奥莱.png differ diff --git a/src/assets/p1/弹性福利之旅.png b/src/assets/p1/弹性福利之旅.png new file mode 100644 index 0000000..7b08cfe Binary files /dev/null and b/src/assets/p1/弹性福利之旅.png differ diff --git a/src/assets/p1/箭头.png b/src/assets/p1/箭头.png new file mode 100644 index 0000000..e42ac83 Binary files /dev/null and b/src/assets/p1/箭头.png differ diff --git a/src/assets/p1/蓝天.png b/src/assets/p1/蓝天.png new file mode 100644 index 0000000..b523b04 Binary files /dev/null and b/src/assets/p1/蓝天.png differ diff --git a/src/assets/标准 logo.png b/src/assets/标准 logo.png new file mode 100644 index 0000000..1244054 Binary files /dev/null and b/src/assets/标准 logo.png differ diff --git a/src/main.ts b/src/main.ts new file mode 100644 index 0000000..f314e63 --- /dev/null +++ b/src/main.ts @@ -0,0 +1,6 @@ +import { createApp } from 'vue' +import './style.css' +import 'normalize.css' +import App from './App.vue' + +createApp(App).mount('#app') diff --git a/src/pages/Page1.vue b/src/pages/Page1.vue new file mode 100644 index 0000000..a8f0cb3 --- /dev/null +++ b/src/pages/Page1.vue @@ -0,0 +1,327 @@ + + + + + \ No newline at end of file diff --git a/src/style.css b/src/style.css new file mode 100644 index 0000000..1baf48a --- /dev/null +++ b/src/style.css @@ -0,0 +1,30 @@ +@import "tailwindcss"; +@import "./assets/fonts/stylesheet.css"; + +body { + margin: 0; + font-family: 'Noto Serif SC Variable' sans-serif; + user-select: none; + touch-action: none; +} + +.elan { + font-family: 'Elan ITC Std', sans-serif; + vertical-align: middle; + text-box-edge: cap alphabetic; + text-box-trim: trim-both; +} +span>span{ + + position: relative !important; +} +.block{ + display: block !important; +} +.relative { + position: relative !important; +} + +* { + box-sizing: border-box; +} \ No newline at end of file diff --git a/src/vite-env.d.ts b/src/vite-env.d.ts new file mode 100644 index 0000000..11f02fe --- /dev/null +++ b/src/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/tsconfig.app.json b/tsconfig.app.json new file mode 100644 index 0000000..3dbbc45 --- /dev/null +++ b/tsconfig.app.json @@ -0,0 +1,15 @@ +{ + "extends": "@vue/tsconfig/tsconfig.dom.json", + "compilerOptions": { + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo", + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "erasableSyntaxOnly": true, + "noFallthroughCasesInSwitch": true, + "noUncheckedSideEffectImports": true + }, + "include": ["src/**/*.ts", "src/**/*.tsx", "src/**/*.vue"] +} diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..1ffef60 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,7 @@ +{ + "files": [], + "references": [ + { "path": "./tsconfig.app.json" }, + { "path": "./tsconfig.node.json" } + ] +} diff --git a/tsconfig.node.json b/tsconfig.node.json new file mode 100644 index 0000000..f85a399 --- /dev/null +++ b/tsconfig.node.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", + "target": "ES2023", + "lib": ["ES2023"], + "module": "ESNext", + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "verbatimModuleSyntax": true, + "moduleDetection": "force", + "noEmit": true, + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "erasableSyntaxOnly": true, + "noFallthroughCasesInSwitch": true, + "noUncheckedSideEffectImports": true + }, + "include": ["vite.config.ts"] +} diff --git a/vite.config.ts b/vite.config.ts new file mode 100644 index 0000000..f6942c0 --- /dev/null +++ b/vite.config.ts @@ -0,0 +1,15 @@ +import { defineConfig } from 'vite' +import vue from '@vitejs/plugin-vue' + +import tailwindcss from '@tailwindcss/vite' + +// https://vite.dev/config/ +export default defineConfig({ + plugins: [ + vue(), + tailwindcss(), + ], + server: { + host: '0.0.0.0' + } +})