From 48ff9188cd49ad55157762f07c31320539714a83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sedat=20=C3=96ZT=C3=9CRK?= <76204082+iamsedatozturk@users.noreply.github.com> Date: Thu, 15 May 2025 13:48:03 +0300 Subject: [PATCH] company web site --- company/.gitignore | 25 + company/README.md | 1 + company/eslint.config.js | 28 + company/index.html | 13 + company/package-lock.json | 4515 ++++++++++++++++++ company/package.json | 38 + company/postcss.config.js | 6 + company/public/favicon.ico | Bin 0 -> 1150 bytes company/public/img/enpara.svg | 1 + company/public/img/logo.png | Bin 0 -> 14253 bytes company/public/img/men.png | Bin 0 -> 27446 bytes company/public/img/women.png | Bin 0 -> 22403 bytes company/src/App.tsx | 35 + company/src/components/home/CallToAction.tsx | 27 + company/src/components/home/CaseStudies.tsx | 35 + company/src/components/home/Features.tsx | 64 + company/src/components/home/Hero.tsx | 69 + company/src/components/home/Solutions.tsx | 70 + company/src/components/home/Testimonials.tsx | 44 + company/src/components/layout/Footer.tsx | 151 + company/src/components/layout/Header.tsx | 110 + company/src/components/layout/Layout.tsx | 28 + company/src/components/layout/Logo.tsx | 15 + company/src/context/LanguageContext.tsx | 609 +++ company/src/index.css | 3 + company/src/locales/blogContent.ts | 203 + company/src/locales/team.ts | 56 + company/src/locales/testimonials.ts | 106 + company/src/main.tsx | 10 + company/src/pages/About.tsx | 111 + company/src/pages/Blog.tsx | 102 + company/src/pages/BlogDetail.tsx | 70 + company/src/pages/Contact.tsx | 212 + company/src/pages/Demo.tsx | 169 + company/src/pages/Home.tsx | 21 + company/src/pages/Products.tsx | 138 + company/src/pages/Services.tsx | 143 + company/src/vite-env.d.ts | 1 + company/tailwind.config.js | 8 + company/tsconfig.app.json | 24 + company/tsconfig.json | 7 + company/tsconfig.node.json | 22 + company/vite.config.ts | 10 + 43 files changed, 7300 insertions(+) create mode 100644 company/.gitignore create mode 100644 company/README.md create mode 100644 company/eslint.config.js create mode 100644 company/index.html create mode 100644 company/package-lock.json create mode 100644 company/package.json create mode 100644 company/postcss.config.js create mode 100644 company/public/favicon.ico create mode 100644 company/public/img/enpara.svg create mode 100644 company/public/img/logo.png create mode 100644 company/public/img/men.png create mode 100644 company/public/img/women.png create mode 100644 company/src/App.tsx create mode 100644 company/src/components/home/CallToAction.tsx create mode 100644 company/src/components/home/CaseStudies.tsx create mode 100644 company/src/components/home/Features.tsx create mode 100644 company/src/components/home/Hero.tsx create mode 100644 company/src/components/home/Solutions.tsx create mode 100644 company/src/components/home/Testimonials.tsx create mode 100644 company/src/components/layout/Footer.tsx create mode 100644 company/src/components/layout/Header.tsx create mode 100644 company/src/components/layout/Layout.tsx create mode 100644 company/src/components/layout/Logo.tsx create mode 100644 company/src/context/LanguageContext.tsx create mode 100644 company/src/index.css create mode 100644 company/src/locales/blogContent.ts create mode 100644 company/src/locales/team.ts create mode 100644 company/src/locales/testimonials.ts create mode 100644 company/src/main.tsx create mode 100644 company/src/pages/About.tsx create mode 100644 company/src/pages/Blog.tsx create mode 100644 company/src/pages/BlogDetail.tsx create mode 100644 company/src/pages/Contact.tsx create mode 100644 company/src/pages/Demo.tsx create mode 100644 company/src/pages/Home.tsx create mode 100644 company/src/pages/Products.tsx create mode 100644 company/src/pages/Services.tsx create mode 100644 company/src/vite-env.d.ts create mode 100644 company/tailwind.config.js create mode 100644 company/tsconfig.app.json create mode 100644 company/tsconfig.json create mode 100644 company/tsconfig.node.json create mode 100644 company/vite.config.ts diff --git a/company/.gitignore b/company/.gitignore new file mode 100644 index 00000000..7ceb59f8 --- /dev/null +++ b/company/.gitignore @@ -0,0 +1,25 @@ +# 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? +.env diff --git a/company/README.md b/company/README.md new file mode 100644 index 00000000..5047eb63 --- /dev/null +++ b/company/README.md @@ -0,0 +1 @@ +# website \ No newline at end of file diff --git a/company/eslint.config.js b/company/eslint.config.js new file mode 100644 index 00000000..82c2e20c --- /dev/null +++ b/company/eslint.config.js @@ -0,0 +1,28 @@ +import js from '@eslint/js'; +import globals from 'globals'; +import reactHooks from 'eslint-plugin-react-hooks'; +import reactRefresh from 'eslint-plugin-react-refresh'; +import tseslint from 'typescript-eslint'; + +export default tseslint.config( + { ignores: ['dist'] }, + { + extends: [js.configs.recommended, ...tseslint.configs.recommended], + files: ['**/*.{ts,tsx}'], + languageOptions: { + ecmaVersion: 2020, + globals: globals.browser, + }, + plugins: { + 'react-hooks': reactHooks, + 'react-refresh': reactRefresh, + }, + rules: { + ...reactHooks.configs.recommended.rules, + 'react-refresh/only-export-components': [ + 'warn', + { allowConstantExport: true }, + ], + }, + } +); diff --git a/company/index.html b/company/index.html new file mode 100644 index 00000000..79bf206a --- /dev/null +++ b/company/index.html @@ -0,0 +1,13 @@ + + + + + + + Sözsoft Bilişim Hizmetleri + + +
+ + + diff --git a/company/package-lock.json b/company/package-lock.json new file mode 100644 index 00000000..7e88d2a1 --- /dev/null +++ b/company/package-lock.json @@ -0,0 +1,4515 @@ +{ + "name": "sozsoft", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "sozsoft", + "version": "0.0.0", + "dependencies": { + "glob": "^10.4.5", + "lucide-react": "^0.344.0", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "react-router-dom": "^6.22.2", + "react-slick": "^0.30.3", + "rimraf": "^4.4.1", + "slick-carousel": "^1.8.1" + }, + "devDependencies": { + "@types/react": "^18.2.55", + "@types/react-dom": "^18.2.19", + "@types/slick-carousel": "^1.6.40", + "@typescript-eslint/eslint-plugin": "^6.21.0", + "@typescript-eslint/parser": "^6.21.0", + "@vitejs/plugin-react": "^4.2.1", + "autoprefixer": "^10.4.17", + "eslint": "^8.57.1", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-react-refresh": "^0.4.5", + "postcss": "^8.4.35", + "tailwindcss": "^3.4.1", + "typescript": "^5.2.2", + "vite": "^5.1.0" + } + }, + "node_modules/@alloc/quick-lru": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.25.7.tgz", + "integrity": "sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.25.7", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.7.tgz", + "integrity": "sha512-9ickoLz+hcXCeh7jrcin+/SLWm+GkxE2kTvoYyp38p4WkdFXfQJxDFGWp/YHjiKLPx06z2A7W8XKuqbReXDzsw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.7.tgz", + "integrity": "sha512-yJ474Zv3cwiSOO9nXJuqzvwEeM+chDuQ8GJirw+pZ91sCGCyOZ3dJkVE09fTV0VEVzXyLWhh3G/AolYTPX7Mow==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.25.7", + "@babel/generator": "^7.25.7", + "@babel/helper-compilation-targets": "^7.25.7", + "@babel/helper-module-transforms": "^7.25.7", + "@babel/helpers": "^7.25.7", + "@babel/parser": "^7.25.7", + "@babel/template": "^7.25.7", + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.7", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.7.tgz", + "integrity": "sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.25.7", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.7.tgz", + "integrity": "sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.25.7", + "@babel/helper-validator-option": "^7.25.7", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.7.tgz", + "integrity": "sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.7.tgz", + "integrity": "sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.25.7", + "@babel/helper-simple-access": "^7.25.7", + "@babel/helper-validator-identifier": "^7.25.7", + "@babel/traverse": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.7.tgz", + "integrity": "sha512-eaPZai0PiqCi09pPs3pAFfl/zYgGaE6IdXtYvmf0qlcDTd3WCtO7JWCcRd64e0EQrcYgiHibEZnOGsSY4QSgaw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.25.7.tgz", + "integrity": "sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.7.tgz", + "integrity": "sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.7.tgz", + "integrity": "sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.7.tgz", + "integrity": "sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.7.tgz", + "integrity": "sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA==", + "dev": true, + "dependencies": { + "@babel/template": "^7.25.7", + "@babel/types": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.25.7.tgz", + "integrity": "sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.25.7", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.7.tgz", + "integrity": "sha512-aZn7ETtQsjjGG5HruveUK06cU3Hljuhd9Iojm4M8WWv3wLE6OkE5PWbDUkItmMgegmccaITudyuW5RPYrYlgWw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.25.7" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.25.7.tgz", + "integrity": "sha512-JD9MUnLbPL0WdVK8AWC7F7tTG2OS6u/AKKnsK+NdRhUiVdnzyR1S3kKQCaRLOiaULvUiqK6Z4JQE635VgtCFeg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.25.7.tgz", + "integrity": "sha512-S/JXG/KrbIY06iyJPKfxr0qRxnhNOdkNXYBl/rmwgDd72cQLH9tEGkDm/yJPGvcSIUoikzfjMios9i+xT/uv9w==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.7.tgz", + "integrity": "sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.25.7", + "@babel/parser": "^7.25.7", + "@babel/types": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.7.tgz", + "integrity": "sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.25.7", + "@babel/generator": "^7.25.7", + "@babel/parser": "^7.25.7", + "@babel/template": "^7.25.7", + "@babel/types": "^7.25.7", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/types": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.7.tgz", + "integrity": "sha512-vwIVdXG+j+FOpkwqHRcBgHLYNL7XMkufrlaFvL9o6Ai9sJn9+PdyIL5qa0XzTZw084c+u9LOls53eoZWP/W5WQ==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.25.7", + "@babel/helper-validator-identifier": "^7.25.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/js": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", + "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", + "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", + "deprecated": "Use @eslint/config-array instead", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.3", + "debug": "^4.3.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "deprecated": "Use @eslint/object-schema instead", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@remix-run/router": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.23.0.tgz", + "integrity": "sha512-O3rHJzAQKamUz1fvE0Qaw0xSFqsA/yafi2iqeE0pvdFtCO1viYx8QL6f3Ln/aCCTLxs68SLf0KPM9eSeM8yBnA==", + "license": "MIT", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.24.0.tgz", + "integrity": "sha512-Q6HJd7Y6xdB48x8ZNVDOqsbh2uByBhgK8PiQgPhwkIw/HC/YX5Ghq2mQY5sRMZWHb3VsFkWooUVOZHKr7DmDIA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.24.0.tgz", + "integrity": "sha512-ijLnS1qFId8xhKjT81uBHuuJp2lU4x2yxa4ctFPtG+MqEE6+C5f/+X/bStmxapgmwLwiL3ih122xv8kVARNAZA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.24.0.tgz", + "integrity": "sha512-bIv+X9xeSs1XCk6DVvkO+S/z8/2AMt/2lMqdQbMrmVpgFvXlmde9mLcbQpztXm1tajC3raFDqegsH18HQPMYtA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.24.0.tgz", + "integrity": "sha512-X6/nOwoFN7RT2svEQWUsW/5C/fYMBe4fnLK9DQk4SX4mgVBiTA9h64kjUYPvGQ0F/9xwJ5U5UfTbl6BEjaQdBQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.24.0.tgz", + "integrity": "sha512-0KXvIJQMOImLCVCz9uvvdPgfyWo93aHHp8ui3FrtOP57svqrF/roSSR5pjqL2hcMp0ljeGlU4q9o/rQaAQ3AYA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.24.0.tgz", + "integrity": "sha512-it2BW6kKFVh8xk/BnHfakEeoLPv8STIISekpoF+nBgWM4d55CZKc7T4Dx1pEbTnYm/xEKMgy1MNtYuoA8RFIWw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.24.0.tgz", + "integrity": "sha512-i0xTLXjqap2eRfulFVlSnM5dEbTVque/3Pi4g2y7cxrs7+a9De42z4XxKLYJ7+OhE3IgxvfQM7vQc43bwTgPwA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.24.0.tgz", + "integrity": "sha512-9E6MKUJhDuDh604Qco5yP/3qn3y7SLXYuiC0Rpr89aMScS2UAmK1wHP2b7KAa1nSjWJc/f/Lc0Wl1L47qjiyQw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.24.0.tgz", + "integrity": "sha512-2XFFPJ2XMEiF5Zi2EBf4h73oR1V/lycirxZxHZNc93SqDN/IWhYYSYj8I9381ikUFXZrz2v7r2tOVk2NBwxrWw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.24.0.tgz", + "integrity": "sha512-M3Dg4hlwuntUCdzU7KjYqbbd+BLq3JMAOhCKdBE3TcMGMZbKkDdJ5ivNdehOssMCIokNHFOsv7DO4rlEOfyKpg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.24.0.tgz", + "integrity": "sha512-mjBaoo4ocxJppTorZVKWFpy1bfFj9FeCMJqzlMQGjpNPY9JwQi7OuS1axzNIk0nMX6jSgy6ZURDZ2w0QW6D56g==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.24.0.tgz", + "integrity": "sha512-ZXFk7M72R0YYFN5q13niV0B7G8/5dcQ9JDp8keJSfr3GoZeXEoMHP/HlvqROA3OMbMdfr19IjCeNAnPUG93b6A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.24.0.tgz", + "integrity": "sha512-w1i+L7kAXZNdYl+vFvzSZy8Y1arS7vMgIy8wusXJzRrPyof5LAb02KGr1PD2EkRcl73kHulIID0M501lN+vobQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.24.0.tgz", + "integrity": "sha512-VXBrnPWgBpVDCVY6XF3LEW0pOU51KbaHhccHw6AS6vBWIC60eqsH19DAeeObl+g8nKAz04QFdl/Cefta0xQtUQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.24.0.tgz", + "integrity": "sha512-xrNcGDU0OxVcPTH/8n/ShH4UevZxKIO6HJFK0e15XItZP2UcaiLFd5kiX7hJnqCbSztUF8Qot+JWBC/QXRPYWQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.24.0.tgz", + "integrity": "sha512-fbMkAF7fufku0N2dE5TBXcNlg0pt0cJue4xBRE2Qc5Vqikxr4VCgKj/ht6SMdFcOacVA9rqF70APJ8RN/4vMJw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.6.tgz", + "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "dev": true + }, + "node_modules/@types/jquery": { + "version": "3.5.32", + "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.32.tgz", + "integrity": "sha512-b9Xbf4CkMqS02YH8zACqN1xzdxc3cO735Qe5AbSUFmyOiaWAbcpqh9Wna+Uk0vgACvoQHpWDg2rGdHkYPLmCiQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/sizzle": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/prop-types": { + "version": "15.7.13", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.13.tgz", + "integrity": "sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==", + "dev": true + }, + "node_modules/@types/react": { + "version": "18.3.11", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.11.tgz", + "integrity": "sha512-r6QZ069rFTjrEYgFdOck1gK7FLVsgJE7tTz0pQBczlBNUhBNk0MQH4UbnFSwjpQLMkLzgqvBBa+qGpLje16eTQ==", + "dev": true, + "dependencies": { + "@types/prop-types": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.3.0", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.0.tgz", + "integrity": "sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==", + "dev": true, + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/semver": { + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.0.tgz", + "integrity": "sha512-k107IF4+Xr7UHjwDc7Cfd6PRQfbdkiRabXGRjo07b4WyPahFBZCZ1sE+BNxYIJPPg73UkfOsVOLwqVc/6ETrIA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/sizzle": { + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.9.tgz", + "integrity": "sha512-xzLEyKB50yqCUPUJkIsrVvoWNfFUbIZI+RspLWt8u+tIW/BetMBZtgV2LY/2o+tYH8dRvQ+eoPf3NdhQCcLE2w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/slick-carousel": { + "version": "1.6.40", + "resolved": "https://registry.npmjs.org/@types/slick-carousel/-/slick-carousel-1.6.40.tgz", + "integrity": "sha512-r56PBGVLYHmZvFSV+UC4dYbnpEu3LGzgJiSSixBx5ME+IUhsyho1XP7gKSG0R9tiYSx54ftq/g+miLQTbA10Dw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/jquery": "*" + } + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", + "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/type-utils": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", + "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/type-utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz", + "integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "debug": "^4.3.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", + "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", + "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", + "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "semver": "^7.5.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", + "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", + "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", + "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", + "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@ungap/structured-clone": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", + "dev": true, + "license": "ISC" + }, + "node_modules/@vitejs/plugin-react": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.3.2.tgz", + "integrity": "sha512-hieu+o05v4glEBucTcKMK3dlES0OeJlD9YVOAPraVMOInBCwzumaIFiUjr4bHK7NPgnAHgiskUoceKercrN8vg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.25.2", + "@babel/plugin-transform-react-jsx-self": "^7.24.7", + "@babel/plugin-transform-react-jsx-source": "^7.24.7", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.14.2" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.2.0 || ^5.0.0" + } + }, + "node_modules/acorn": { + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", + "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", + "dev": true + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/autoprefixer": { + "version": "10.4.20", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", + "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "browserslist": "^4.23.3", + "caniuse-lite": "^1.0.30001646", + "fraction.js": "^4.3.7", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.0.tgz", + "integrity": "sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001663", + "electron-to-chromium": "^1.5.28", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001718", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001718.tgz", + "integrity": "sha512-AflseV1ahcSunK53NfEs9gFWgOEmzr0f+kaMFA4xiLZlr9Hzt7HxcSpIFcnNCUkz6R6dWKa54rUz3HUmI3nVcw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/classnames": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz", + "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==", + "license": "MIT" + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "dev": true + }, + "node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", + "dev": true + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "dev": true + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.33", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.33.tgz", + "integrity": "sha512-+cYTcFB1QqD4j4LegwLfpCNxifb6dDFUAwk6RsLusCwIaZI6or2f+q8rs5tTB2YC53HhOlIbEaqHMAAC8IOIwA==", + "dev": true + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "node_modules/enquire.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/enquire.js/-/enquire.js-2.1.6.tgz", + "integrity": "sha512-/KujNpO+PT63F7Hlpu4h3pE3TokKRHN26JYmQpPyjkRD/N57R7bPDNojMXdi7uveAKjYB7yQnartCxZnFWr0Xw==", + "license": "MIT" + }, + "node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/eslint": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", + "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", + "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.1", + "@humanwhocodes/config-array": "^0.13.0", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.2.tgz", + "integrity": "sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" + } + }, + "node_modules/eslint-plugin-react-refresh": { + "version": "0.4.12", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.12.tgz", + "integrity": "sha512-9neVjoGv20FwYtCP6CB1dzR1vr57ZDNOXst21wd2xJ/cTlM2xLq0GWVlSNTdMn/4BtP6cHYBMCSp1wFBJ9jBsg==", + "dev": true, + "peerDependencies": { + "eslint": ">=7" + } + }, + "node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/eslint/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/eslint/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/eslint/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flat-cache/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/flat-cache/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "dev": true, + "license": "ISC" + }, + "node_modules/foreground-child": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", + "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "dev": true, + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "license": "ISC" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "license": "ISC", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/glob/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/glob/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", + "dev": true, + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jiti": { + "version": "1.21.6", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.6.tgz", + "integrity": "sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==", + "dev": true, + "bin": { + "jiti": "bin/jiti.js" + } + }, + "node_modules/jquery": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", + "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==", + "license": "MIT", + "peer": true + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", + "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/json2mq": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/json2mq/-/json2mq-0.2.0.tgz", + "integrity": "sha512-SzoRg7ux5DWTII9J2qkrZrqV1gt+rTaoufMxEzXbS26Uid0NwaJd123HcoB80TgubEppxxIGdNxCx50fEoEWQA==", + "license": "MIT", + "dependencies": { + "string-convert": "^0.2.0" + } + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "license": "MIT" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/lucide-react": { + "version": "0.344.0", + "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-0.344.0.tgz", + "integrity": "sha512-6YyBnn91GB45VuVT96bYCOKElbJzUHqp65vX8cDcu55MQL9T969v4dhGClpljamuI/+KMO9P6w9Acq1CVQGvIQ==", + "peerDependencies": { + "react": "^16.5.1 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/node-releases": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", + "dev": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==" + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss": { + "version": "8.4.47", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", + "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.1.0", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-import": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", + "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-js": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", + "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", + "dev": true, + "dependencies": { + "camelcase-css": "^2.0.1" + }, + "engines": { + "node": "^12 || ^14 || >= 16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.4.21" + } + }, + "node_modules/postcss-load-config": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", + "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "lilconfig": "^3.0.0", + "yaml": "^2.3.4" + }, + "engines": { + "node": ">= 14" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/postcss-load-config/node_modules/lilconfig": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.2.tgz", + "integrity": "sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, + "node_modules/postcss-nested": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz", + "integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "postcss-selector-parser": "^6.1.1" + }, + "engines": { + "node": ">=12.0" + }, + "peerDependencies": { + "postcss": "^8.2.14" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/react": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", + "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", + "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.2" + }, + "peerDependencies": { + "react": "^18.3.1" + } + }, + "node_modules/react-refresh": { + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.2.tgz", + "integrity": "sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-router": { + "version": "6.30.0", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.30.0.tgz", + "integrity": "sha512-D3X8FyH9nBcTSHGdEKurK7r8OYE1kKFn3d/CF+CoxbSHkxU7o37+Uh7eAHRXr6k2tSExXYO++07PeXJtA/dEhQ==", + "license": "MIT", + "dependencies": { + "@remix-run/router": "1.23.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/react-router-dom": { + "version": "6.30.0", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.30.0.tgz", + "integrity": "sha512-x30B78HV5tFk8ex0ITwzC9TTZMua4jGyA9IUlH1JLQYQTFyxr/ZxwOJq7evg1JX1qGVUcvhsmQSKdPncQrjTgA==", + "license": "MIT", + "dependencies": { + "@remix-run/router": "1.23.0", + "react-router": "6.30.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, + "node_modules/react-slick": { + "version": "0.30.3", + "resolved": "https://registry.npmjs.org/react-slick/-/react-slick-0.30.3.tgz", + "integrity": "sha512-B4x0L9GhkEWUMApeHxr/Ezp2NncpGc+5174R02j+zFiWuYboaq98vmxwlpafZfMjZic1bjdIqqmwLDcQY0QaFA==", + "license": "MIT", + "dependencies": { + "classnames": "^2.2.5", + "enquire.js": "^2.1.6", + "json2mq": "^0.2.0", + "lodash.debounce": "^4.0.8", + "resize-observer-polyfill": "^1.5.0" + }, + "peerDependencies": { + "react": "^0.14.0 || ^15.0.1 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^0.14.0 || ^15.0.1 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dev": true, + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/resize-observer-polyfill": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", + "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==", + "license": "MIT" + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz", + "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==", + "license": "ISC", + "dependencies": { + "glob": "^9.2.0" + }, + "bin": { + "rimraf": "dist/cjs/src/bin.js" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/rimraf/node_modules/glob": { + "version": "9.3.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", + "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==", + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "minimatch": "^8.0.2", + "minipass": "^4.2.4", + "path-scurry": "^1.6.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/minimatch": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", + "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/minipass": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz", + "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==", + "license": "ISC", + "engines": { + "node": ">=8" + } + }, + "node_modules/rollup": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.24.0.tgz", + "integrity": "sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==", + "dev": true, + "dependencies": { + "@types/estree": "1.0.6" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.24.0", + "@rollup/rollup-android-arm64": "4.24.0", + "@rollup/rollup-darwin-arm64": "4.24.0", + "@rollup/rollup-darwin-x64": "4.24.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.24.0", + "@rollup/rollup-linux-arm-musleabihf": "4.24.0", + "@rollup/rollup-linux-arm64-gnu": "4.24.0", + "@rollup/rollup-linux-arm64-musl": "4.24.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.24.0", + "@rollup/rollup-linux-riscv64-gnu": "4.24.0", + "@rollup/rollup-linux-s390x-gnu": "4.24.0", + "@rollup/rollup-linux-x64-gnu": "4.24.0", + "@rollup/rollup-linux-x64-musl": "4.24.0", + "@rollup/rollup-win32-arm64-msvc": "4.24.0", + "@rollup/rollup-win32-ia32-msvc": "4.24.0", + "@rollup/rollup-win32-x64-msvc": "4.24.0", + "fsevents": "~2.3.2" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/scheduler": { + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", + "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/slick-carousel": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/slick-carousel/-/slick-carousel-1.8.1.tgz", + "integrity": "sha512-XB9Ftrf2EEKfzoQXt3Nitrt/IPbT+f1fgqBdoxO3W/+JYvtEOW6EgxnWfr9GH6nmULv7Y2tPmEX3koxThVmebA==", + "license": "MIT", + "peerDependencies": { + "jquery": ">=1.8.0" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string-convert": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/string-convert/-/string-convert-0.2.1.tgz", + "integrity": "sha512-u/1tdPl4yQnPBjnVrmdLo9gtuLvELKsAoRapekWggdiQNvvvum+jYF329d84NAa660KQw7pB2n36KrIKVoXa3A==", + "license": "MIT" + }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/string-width-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/sucrase": { + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "glob": "^10.3.10", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tailwindcss": { + "version": "3.4.13", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.13.tgz", + "integrity": "sha512-KqjHOJKogOUt5Bs752ykCeiwvi0fKVkr5oqsFNt/8px/tA8scFPIlkygsf6jXrfCqGHz7VflA6+yytWuM+XhFw==", + "dev": true, + "dependencies": { + "@alloc/quick-lru": "^5.2.0", + "arg": "^5.0.2", + "chokidar": "^3.5.3", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.3.0", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "jiti": "^1.21.0", + "lilconfig": "^2.1.0", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.4.23", + "postcss-import": "^15.1.0", + "postcss-js": "^4.0.1", + "postcss-load-config": "^4.0.1", + "postcss-nested": "^6.0.1", + "postcss-selector-parser": "^6.0.11", + "resolve": "^1.22.2", + "sucrase": "^3.32.0" + }, + "bin": { + "tailwind": "lib/cli.js", + "tailwindcss": "lib/cli.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true, + "license": "MIT" + }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dev": true, + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/ts-api-utils": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", + "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", + "dev": true, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "typescript": ">=4.2.0" + } + }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", + "dev": true + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", + "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", + "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/vite": { + "version": "5.4.8", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.8.tgz", + "integrity": "sha512-FqrItQ4DT1NC4zCUqMB4c4AZORMKIa0m8/URVCZ77OZ/QSNeJ54bU1vrFADbDsuwfIPcgknRkmqakQcgnL4GiQ==", + "dev": true, + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/yaml": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.5.1.tgz", + "integrity": "sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q==", + "dev": true, + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/company/package.json b/company/package.json new file mode 100644 index 00000000..bb125a21 --- /dev/null +++ b/company/package.json @@ -0,0 +1,38 @@ +{ + "name": "sozsoft", + "private": true, + "version": "1.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "tsc && vite build", + "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0", + "preview": "vite preview" + }, + "dependencies": { + "glob": "^10.4.5", + "lucide-react": "^0.344.0", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "react-router-dom": "^6.22.2", + "react-slick": "^0.30.3", + "rimraf": "^4.4.1", + "slick-carousel": "^1.8.1" + }, + "devDependencies": { + "@types/react": "^18.2.55", + "@types/react-dom": "^18.2.19", + "@types/slick-carousel": "^1.6.40", + "@typescript-eslint/eslint-plugin": "^6.21.0", + "@typescript-eslint/parser": "^6.21.0", + "@vitejs/plugin-react": "^4.2.1", + "autoprefixer": "^10.4.17", + "eslint": "^8.57.1", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-react-refresh": "^0.4.5", + "postcss": "^8.4.35", + "tailwindcss": "^3.4.1", + "typescript": "^5.2.2", + "vite": "^5.1.0" + } +} diff --git a/company/postcss.config.js b/company/postcss.config.js new file mode 100644 index 00000000..2aa7205d --- /dev/null +++ b/company/postcss.config.js @@ -0,0 +1,6 @@ +export default { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +}; diff --git a/company/public/favicon.ico b/company/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..13b2c5d69a27b6f53d447cade6f5a7e7783a1663 GIT binary patch literal 1150 zcmZ`&drXs86u(81ExIfuBzwgDK{EevtquyxL%Xtq$WY_VGL}tIK7f@QRVWi7!6ObXKP?0#w&vSsJXx##BG^E>x^ z=XWkbH2nGaAiVma6mNuHK?rTeie1?A%#RI1`0W2gMIdB1=Dh42D#~zp2w8TNr7J(i+UUu_3qwdj(4*x9V@XbI0XdgJHs!~-CwpWy52rgs3y!|x zg_%xib@qOZERpRlP2xZqH^N$;6uybdQ4;s2w~}D!F_wIe2YC{mR1l2$uT!^t(r{uY z%{ivScd)!FQlidQq{WcssqaBK5jj$t$l5^VP$v4VQzkQxV9d0q2KDi+WDSq$zLK+z zUw^{ii;ByR*+f%hzF%K)d>@n%yP)*wJN&!7T$=Ug)Yt6Y>FhCWGOt+}^-!JuHZ)`h zkqz@*`tkvqeNcp2&xWr5J}=aKl^+bXJSM45_a_~_rw3L{rx%xhJ4x1l8R_mV z40yF)9H<*na$w@h$8b;onft*|-a*jkQY}aIS#uZN|~oJs$%_gPyWD?!=T5!wcBn8+y9v_oCDX86YBwDtI;4d zH(W$a={}#Q`f%$)6pUWl509*E@Rzj-9^a{g)^mGcO%2y`@Z7JJ*`ea~PLrZ)P#)>N zc|Hgzy=xFHEloE+z`Q@P{P+c)Z^je+FLjEf&Aw}~p1t#yls0@}FQ=z~S$0FjGZ5w(A9i1k{Uu?iKh^-v0`9EWodz3vUEiyD(-7 GWB&$ \ No newline at end of file diff --git a/company/public/img/logo.png b/company/public/img/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..4eef40bad8f897b7a677109eb20b9feb1d3b0c18 GIT binary patch literal 14253 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 P00000NkvXXu0mjfbZ4Y$ literal 0 HcmV?d00001 diff --git a/company/public/img/men.png b/company/public/img/men.png new file mode 100644 index 0000000000000000000000000000000000000000..17c791236b62f15423378b87c71401c29886a0b7 GIT binary patch literal 27446 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 literal 0 HcmV?d00001 diff --git a/company/public/img/women.png b/company/public/img/women.png new file mode 100644 index 0000000000000000000000000000000000000000..66afffd185f6f28c7aaea155a82dde146a4e929a GIT binary patch literal 22403 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 D-wPqC literal 0 HcmV?d00001 diff --git a/company/src/App.tsx b/company/src/App.tsx new file mode 100644 index 00000000..ddf68af1 --- /dev/null +++ b/company/src/App.tsx @@ -0,0 +1,35 @@ +import React from 'react'; +import { BrowserRouter as Router, Routes, Route } from 'react-router-dom'; +import Layout from './components/layout/Layout'; +import Home from './pages/Home'; +import Products from './pages/Products'; +import Services from './pages/Services'; +import About from './pages/About'; +import Blog from './pages/Blog'; +import Contact from './pages/Contact'; +import Demo from './pages/Demo'; +import BlogDetail from './pages/BlogDetail'; +import { LanguageProvider } from './context/LanguageContext'; + +function App() { + return ( + + + + + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + + + + + ); +} + +export default App; diff --git a/company/src/components/home/CallToAction.tsx b/company/src/components/home/CallToAction.tsx new file mode 100644 index 00000000..64926d18 --- /dev/null +++ b/company/src/components/home/CallToAction.tsx @@ -0,0 +1,27 @@ +import React from 'react'; +import { Link } from 'react-router-dom'; +import { useLanguage } from '../../context/LanguageContext'; + +const CallToAction: React.FC = () => { + const { t } = useLanguage(); + + return ( +
    +
    +
    +

    + {t('common.getStarted')} +

    +

    + {t('common.contact')} +

    + + {t('common.learnMore')} + +
    +
    +
    + ); +}; + +export default CallToAction; \ No newline at end of file diff --git a/company/src/components/home/CaseStudies.tsx b/company/src/components/home/CaseStudies.tsx new file mode 100644 index 00000000..73666d52 --- /dev/null +++ b/company/src/components/home/CaseStudies.tsx @@ -0,0 +1,35 @@ +import React from 'react'; + +const CaseStudies: React.FC = () => { + return ( +
    +
    +
    +

    + Case Studies +

    +

    + See how we've helped businesses achieve their goals +

    +
    +
    + {/* Placeholder for case study cards */} +
    +

    Case Study 1

    +

    Coming soon...

    +
    +
    +

    Case Study 2

    +

    Coming soon...

    +
    +
    +

    Case Study 3

    +

    Coming soon...

    +
    +
    +
    +
    + ); +}; + +export default CaseStudies; diff --git a/company/src/components/home/Features.tsx b/company/src/components/home/Features.tsx new file mode 100644 index 00000000..94f8a56b --- /dev/null +++ b/company/src/components/home/Features.tsx @@ -0,0 +1,64 @@ +import React from 'react'; +import { Shield, Zap, Users, BarChart } from 'lucide-react'; +import { useLanguage } from '../../context/LanguageContext'; + +const Features: React.FC = () => { + const { t } = useLanguage(); + + const features = [ + { + icon: , + title: t('features.reliable'), + description: t('features.reliable.desc') + }, + { + icon: , + title: t('features.rapid'), + description: t('features.rapid.desc') + }, + { + icon: , + title: t('features.expert'), + description: t('features.expert.desc') + }, + { + icon: , + title: t('features.scalable'), + description: t('features.scalable.desc') + } + ]; + + return ( +
    +
    +
    +

    + {t('features.title')} +

    +

    + {t('features.subtitle')} +

    +
    + +
    + {features.map((feature, index) => ( +
    +
    {feature.icon}
    +

    + {feature.title} +

    +

    + {feature.description} +

    +
    + ))} +
    +
    +
    + ); +}; + +export default Features; \ No newline at end of file diff --git a/company/src/components/home/Hero.tsx b/company/src/components/home/Hero.tsx new file mode 100644 index 00000000..e7e6bdc4 --- /dev/null +++ b/company/src/components/home/Hero.tsx @@ -0,0 +1,69 @@ +import React from 'react'; +import { ArrowRight, Code, Globe2, Cpu } from 'lucide-react'; +import { Link } from 'react-router-dom'; +import { useLanguage } from '../../context/LanguageContext'; + +const Hero: React.FC = () => { + const { t } = useLanguage(); + + return ( +
    +
    +
    + +
    +
    +

    + {t('hero.title')} +

    + +

    + {t('hero.subtitle')} +

    + +
    + + {t('hero.cta.consultation')} + + + + {t('hero.cta.discover')} + +
    + +
    +
    + +

    {t('hero.service1.title')}

    +

    {t('hero.service1.desc')}

    +
    + +
    + +

    {t('hero.service2.title')}

    +

    {t('hero.service2.desc')}

    +
    + +
    + +

    {t('hero.service3.title')}

    +

    {t('hero.service3.desc')}

    +
    +
    +
    +
    +
    + ); +}; + +export default Hero; \ No newline at end of file diff --git a/company/src/components/home/Solutions.tsx b/company/src/components/home/Solutions.tsx new file mode 100644 index 00000000..b3b184e7 --- /dev/null +++ b/company/src/components/home/Solutions.tsx @@ -0,0 +1,70 @@ +import React from 'react'; +import { Monitor, Smartphone, Server, Database } from 'lucide-react'; +import { useLanguage } from '../../context/LanguageContext'; + +const Solutions: React.FC = () => { + const { t } = useLanguage(); + + const solutions = [ + { + icon: , + title: t('solutions.web.title'), + description: t('solutions.web.desc'), + color: 'bg-blue-600' + }, + { + icon: , + title: t('solutions.mobile.title'), + description: t('solutions.mobile.desc'), + color: 'bg-purple-600' + }, + { + icon: , + title: t('solutions.custom.title'), + description: t('solutions.custom.desc'), + color: 'bg-green-600' + }, + { + icon: , + title: t('solutions.database.title'), + description: t('solutions.database.desc'), + color: 'bg-red-600' + } + ]; + + return ( +
    +
    +
    +

    + {t('solutions.title')} +

    +

    + {t('solutions.subtitle')} +

    +
    + +
    + {solutions.map((solution, index) => ( +
    +
    +
    {solution.icon}
    +

    + {solution.title} +

    +

    + {solution.description} +

    +
    +
    + ))} +
    +
    +
    + ); +}; + +export default Solutions; \ No newline at end of file diff --git a/company/src/components/home/Testimonials.tsx b/company/src/components/home/Testimonials.tsx new file mode 100644 index 00000000..ea540297 --- /dev/null +++ b/company/src/components/home/Testimonials.tsx @@ -0,0 +1,44 @@ +import React from 'react'; +import Slider from 'react-slick'; +import 'slick-carousel/slick/slick.css'; +import 'slick-carousel/slick/slick-theme.css'; +import { useLanguage } from '../../context/LanguageContext'; +import { testimonials } from '../../locales/testimonials'; + +const Testimonials: React.FC = () => { + const { t, language } = useLanguage(); + + const testimonialsData = testimonials[language]; + + const settings = { + dots: true, + infinite: true, + speed: 500, + slidesToShow: 3, + slidesToScroll: 1, + autoplay: true, + autoplaySpeed: 5000, + cssEase: "linear" + }; + + return ( +
    +
    +

    {t('testimonials.title')}

    + + {testimonialsData.map((testimonial, index) => ( +
    +
    +

    "{testimonial.quote}"

    +
    {testimonial.author}
    +
    {testimonial.title}
    +
    +
    + ))} +
    +
    +
    + ); +}; + +export default Testimonials; diff --git a/company/src/components/layout/Footer.tsx b/company/src/components/layout/Footer.tsx new file mode 100644 index 00000000..88ec8f8e --- /dev/null +++ b/company/src/components/layout/Footer.tsx @@ -0,0 +1,151 @@ +import React from 'react'; +import { Mail, Phone, MapPin, Facebook, Twitter, Linkedin, Instagram } from 'lucide-react'; +import Logo from './Logo'; +import { Link } from 'react-router-dom'; +import { useLanguage } from '../../context/LanguageContext'; + +const Footer: React.FC = () => { + const { t } = useLanguage(); + const currentYear = new Date().getFullYear(); + + return ( +
    +
    +
    + {/* Company Info */} +
    + +

    + {t('footer.companyInfo')} +

    + +
    + + {/* Quick Links */} +
    +

    {t('footer.quickLinksTitle')}

    +
      +
    • + {t('nav.home')} +
    • +
    • + {t('nav.products')} +
    • +
    • + {t('nav.services')} +
    • +
    • + {t('nav.about')} +
    • +
    • + {t('nav.blog')} +
    • +
    • + {t('nav.contact')} +
    • +
    +
    + + {/* Services */} +
    +

    {t('footer.servicesTitle')}

    +
      +
    • + + {t('services.software.title')} + +
    • +
    • + + {t('services.web.title')} + +
    • +
    • + + {t('services.mobile.title')} + +
    • +
    • + + {t('services.consulting.title')} + +
    • +
    • + + {t('services.maintenance.title')} + +
    • +
    +
    + + {/* Contact Info */} +
    +

    {t('nav.contact')}

    + +
    +
    + +
    +
    +

    + © {currentYear} Sözsoft. {t('footer.copyright')} +

    +
    +
      +
    • + + {t('footer.privacyPolicy')} + +
    • +
    • + + {t('footer.termsOfUse')} + +
    • +
    • + + {t('footer.sitemap')} + +
    • +
    +
    +
    +
    +
    +
    + ); +}; + +export default Footer; diff --git a/company/src/components/layout/Header.tsx b/company/src/components/layout/Header.tsx new file mode 100644 index 00000000..4d4f5740 --- /dev/null +++ b/company/src/components/layout/Header.tsx @@ -0,0 +1,110 @@ +import React, { useState, useEffect } from "react"; +import { Menu, X, Globe } from "lucide-react"; +import Logo from "./Logo"; +import { Link } from "react-router-dom"; +import { useLanguage } from "../../context/LanguageContext"; + +const Header: React.FC = () => { + const [isOpen, setIsOpen] = useState(false); + const [scrolled, setScrolled] = useState(false); + const { language, setLanguage, t } = useLanguage(); + + useEffect(() => { + const handleScroll = () => { + const isScrolled = window.scrollY > 10; + if (isScrolled !== scrolled) { + setScrolled(isScrolled); + } + }; + + window.addEventListener("scroll", handleScroll); + return () => window.removeEventListener("scroll", handleScroll); + }, [scrolled]); + + const toggleMenu = () => setIsOpen(!isOpen); + const toggleLanguage = () => setLanguage(language === "en" ? "tr" : "en"); + + const navLinks = [ + { name: t('nav.home'), path: "/" }, + { name: t('nav.about'), path: "/about" }, + { name: t('nav.products'), path: "/products" }, + { name: t('nav.services'), path: "/services" }, + { name: t('nav.demo'), path: "/demo" }, + { name: t('nav.blog'), path: "/blog" }, + { name: t('nav.contact'), path: "/contact" }, + ]; + + return ( +
    +
    + + + + + {/* Desktop Navigation */} + + + {/* Mobile Menu Button */} + +
    + + {/* Mobile Navigation */} + {isOpen && ( +
    +
    + +
    +
    + )} +
    + ); +}; + +export default Header; \ No newline at end of file diff --git a/company/src/components/layout/Layout.tsx b/company/src/components/layout/Layout.tsx new file mode 100644 index 00000000..6dc5e130 --- /dev/null +++ b/company/src/components/layout/Layout.tsx @@ -0,0 +1,28 @@ +import React, { useEffect } from 'react'; +import { useLocation } from 'react-router-dom'; +import Header from './Header'; +import Footer from './Footer'; + +interface LayoutProps { + children: React.ReactNode; +} + +const Layout: React.FC = ({ children }) => { + const location = useLocation(); + + useEffect(() => { + window.scrollTo(0, 0); + }, [location.pathname]); + + return ( +
    +
    +
    + {children} +
    +
    +
    + ); +}; + +export default Layout; \ No newline at end of file diff --git a/company/src/components/layout/Logo.tsx b/company/src/components/layout/Logo.tsx new file mode 100644 index 00000000..c1a3ccea --- /dev/null +++ b/company/src/components/layout/Logo.tsx @@ -0,0 +1,15 @@ +import React from 'react'; + +interface LogoProps { + color?: string; +} + +const Logo: React.FC = ({ color = '#000' }) => { + return ( +
    + Logo +
    + ); +}; + +export default Logo; diff --git a/company/src/context/LanguageContext.tsx b/company/src/context/LanguageContext.tsx new file mode 100644 index 00000000..aabd2e94 --- /dev/null +++ b/company/src/context/LanguageContext.tsx @@ -0,0 +1,609 @@ +import React, { createContext, useContext, useState } from "react"; + +type Language = "tr" | "en"; + +interface LanguageContextType { + language: Language; + setLanguage: (lang: Language) => void; + t: (key: string) => string; +} + +const translations = { + tr: { + // Navigation + "nav.home": "Ana Sayfa", + "nav.about": "Hakkımızda", + "nav.products": "Ürünler", + "nav.services": "Hizmetler", + "nav.demo": "Demo", + "nav.blog": "Blog", + "nav.contact": "İletişim", + + // Hero Section + "hero.title": "Dijital Dönüşümün Öncüsü", + "hero.subtitle": + "20 yılı aşkın tecrübemizle işletmenizi dijital dünyada bir adım öne taşıyoruz. Yenilikçi çözümlerle geleceğin teknolojilerini bugünden sunuyoruz.", + "hero.cta.consultation": "Danışmanlık Alın", + "hero.cta.discover": "Hizmetlerimizi Keşfedin", + "hero.service1.title": "Özel Yazılım Geliştirme", + "hero.service1.desc": "İşletmenize özel, ölçeklenebilir yazılım çözümleri", + "hero.service2.title": "Web Uygulamaları", + "hero.service2.desc": "Modern ve kullanıcı dostu web uygulamaları", + "hero.service3.title": "Sistem Entegrasyonu", + "hero.service3.desc": "Mevcut sistemlerinizle kusursuz entegrasyon", + + // Features Section + "features.title": "Neden Sözsoft?", + "features.subtitle": + "İşletmenizi dijital dünyada başarıya taşıyacak çözümler sunuyoruz.", + "features.reliable": "Güvenilir Çözümler", + "features.reliable.desc": + "20 yıllık tecrübemizle güvenilir ve sürdürülebilir yazılım çözümleri sunuyoruz.", + "features.rapid": "Hızlı Geliştirme", + "features.rapid.desc": + "Modern teknolojilerle hızlı ve etkili çözümler geliştiriyoruz.", + "features.expert": "Uzman Ekip", + "features.expert.desc": + "Deneyimli ve uzman ekibimizle projelerinizi hayata geçiriyoruz.", + "features.scalable": "Ölçeklenebilir Sistemler", + "features.scalable.desc": + "İşletmenizin büyümesine uygun ölçeklenebilir sistemler tasarlıyoruz.", + + // Solutions Section + "solutions.title": "Çözümlerimiz", + "solutions.subtitle": "İşletmenizin ihtiyaçlarına özel teknoloji çözümleri", + "solutions.web.title": "Web Uygulamaları", + "solutions.web.desc": + "Modern ve kullanıcı dostu web uygulamaları geliştiriyoruz.", + "solutions.mobile.title": "Mobil Uygulamalar", + "solutions.mobile.desc": + "iOS ve Android için native mobil uygulamalar geliştiriyoruz.", + "solutions.custom.title": "Özel Yazılımlar", + "solutions.custom.desc": "İşletmenize özel yazılım çözümleri sunuyoruz.", + "solutions.database.title": "Veritabanı Sistemleri", + "solutions.database.desc": + "Güvenli ve performanslı veritabanı sistemleri kuruyoruz.", + + // Products Page + "products.title": "Ürünlerimiz", + "products.subtitle": + "İşletmenizin ihtiyaçlarına özel geliştirdiğimiz yazılım çözümleri", + "products.kurs.title": "Kurs Yönetim Otomasyonu", + "products.kurs.desc": + "İşletmenizin tüm süreçlerini tek bir platformdan yönetin.", + "products.crm.title": "CRM Sistemi", + "products.crm.desc": "Müşteri ilişkilerinizi etkin bir şekilde yönetin.", + "products.ecommerce.title": "E-Ticaret Platformu", + "products.ecommerce.desc": "Online satış kanalınızı güçlendirin.", + "products.hr.title": "İnsan Kaynakları Yazılımı", + "products.hr.desc": "İK süreçlerinizi dijitalleştirin.", + "products.kurs.features.inventory": "Stok Yönetimi", + "products.kurs.features.purchasing": "Satın Alma Yönetimi", + "products.kurs.features.sales": "Satış Yönetimi", + "products.kurs.features.accounting": "Muhasebe Yönetimi", + "products.kurs.features.reporting": "Raporlama", + "products.kurs.features.mobile": "Mobil Erişim", + "products.crm.features.tracking": "Müşteri Takibi", + "products.crm.features.opportunities": "Fırsat Yönetimi", + "products.crm.features.email": "E-posta Entegrasyonu", + "products.crm.features.tasks": "Görev Yönetimi", + "products.crm.features.calendar": "Takvim Entegrasyonu", + "products.crm.features.analytics": "Analitik Raporlama", + "products.ecommerce.features.responsive": "Duyarlı Tasarım", + "products.ecommerce.features.payment": "Güvenli Ödeme Sistemleri", + "products.ecommerce.features.inventory": "Stok Yönetimi", + "products.ecommerce.features.seo": "SEO Optimizasyonu", + "products.ecommerce.features.analytics": "E-ticaret Analitiği", + "products.ecommerce.features.marketplace": "Pazar Yeri Entegrasyonu", + "products.hr.features.personnel": "Personel Yönetimi", + "products.hr.features.leave": "İzin Yönetimi", + "products.hr.features.performance": "Performans Yönetimi", + "products.hr.features.payroll": "Bordro Yönetimi", + "products.hr.features.training": "Eğitim Yönetimi", + "products.hr.features.digital": "Dijital İK Süreçleri", + "products.cta.title": "Daha Fazla Bilgi", + "products.cta.description": + "İşletmenizin ihtiyaçlarına en uygun çözümleri keşfetmek için ürünlerimizi inceleyin veya bizimle iletişime geçin.", + "products.cta.demo": "Demo Talep Edin", + "services.cta.title": "Dijital Dönüşüm Yolculuğunuza Başlayın", + "services.cta.description": + "İşletmenizin ihtiyaçlarına özel çözümlerimizle rekabette öne geçin. Danışmanlık için bize ulaşın.", + "services.cta.contact": "İletişime Geçin", + "demo.form.title": "Demo Talep Formu", + "demo.subtitle": "Sorularınız için bizimle iletişime geçin. Size yardımcı olmaktan mutluluk duyarız.", + + // Services Page + "services.title": "Hizmetlerimiz", + "services.subtitle": + "İşletmenizin dijital dönüşüm yolculuğunda ihtiyaç duyduğu tüm teknoloji çözümleri", + "services.software.title": "Özel Yazılım Geliştirme", + "services.software.desc": + "İşletmenizin ihtiyaçlarına özel yazılım çözümleri", + "services.web.title": "Web Uygulamaları", + "services.web.desc": "Modern ve kullanıcı dostu web uygulamaları", + "services.mobile.title": "Mobil Uygulamalar", + "services.mobile.desc": "iOS ve Android için native uygulamalar", + "services.database.title": "Veritabanı Çözümleri", + "services.database.desc": "Güvenli ve ölçeklenebilir veritabanı sistemleri", + "services.software.features.analysis": "Analiz ve Planlama", + "services.software.features.design": "Tasarım ve Mimari", + "services.software.features.development": "Yazılım Geliştirme", + "services.software.features.testing": "Test ve Kalite Güvencesi", + "services.software.features.maintenance": "Bakım ve Destek", + "services.web.features.frontend": "Frontend Geliştirme", + "services.web.features.backend": "Backend Geliştirme", + "services.web.features.api": "API Geliştirme", + "services.web.features.seo": "SEO Optimizasyonu", + "services.web.features.performance": "Performans Optimizasyonu", + "services.mobile.features.design": "Mobil Uygulama Tasarımı", + "services.mobile.features.native": "Native Mobil Uygulama Geliştirme", + "services.mobile.features.cross": + "Cross-Platform Mobil Uygulama Geliştirme", + "services.mobile.features.push": "Push Bildirim Entegrasyonu", + "services.mobile.features.store": "App Store ve Google Play Yayınlama", + "services.database.features.design": "Veritabanı Tasarımı", + "services.database.features.optimization": "Veritabanı Optimizasyonu", + "services.database.features.migration": "Veritabanı Taşıma", + "services.database.features.backup": "Veritabanı Yedekleme", + "services.database.features.recovery": "Veritabanı Kurtarma", + "services.integration.title": "Sistem Entegrasyonu", + "services.integration.desc": + "Farklı sistemler arasında veri akışı ve entegrasyon çözümleri", + "services.integration.features.api": "API Entegrasyonu", + "services.integration.features.middleware": "Middleware Geliştirme", + "services.integration.features.legacy": "Legacy Sistem Entegrasyonu", + "services.integration.features.realtime": + "Gerçek Zamanlı Veri Entegrasyonu", + "services.integration.features.monitoring": + "Entegrasyon İzleme ve Yönetimi", + "services.consulting.title": "Teknoloji Danışmanlığı", + "services.consulting.desc": + "İşletmenizin teknoloji stratejisi ve yol haritası için uzman danışmanlık", + "services.consulting.features.tech": "Teknoloji Stratejisi", + "services.consulting.features.project": "Proje Yönetimi Danışmanlığı", + "services.consulting.features.digital": "Dijital Dönüşüm Danışmanlığı", + "services.consulting.features.risk": "Risk Yönetimi Danışmanlığı", + "services.consulting.features.training": "Teknoloji Eğitimleri", + "services.security.title": "Siber Güvenlik", + "services.security.desc": + "İşletmenizin dijital varlıklarını siber tehditlere karşı koruma", + "services.security.features.analysis": "Güvenlik Açığı Analizi", + "services.security.features.penetration": "Sızma Testleri", + "services.security.features.firewall": "Güvenlik Duvarı Yönetimi", + "services.security.features.ssl": "SSL Sertifikası Yönetimi", + "services.security.features.training": "Siber Güvenlik Eğitimleri", + "services.maintenance.title": "Bakım ve Destek", + "services.maintenance.desc": + "Yazılım sistemlerinizin sürekli çalışır durumda olması için kapsamlı bakım ve destek hizmetleri", + "services.maintenance.features.monitoring": "Sistem İzleme", + "services.maintenance.features.bugfix": "Hata Giderme", + "services.maintenance.features.performance": "Performans İyileştirme", + "services.maintenance.features.updates": "Güncelleme Yönetimi", + "services.maintenance.features.support": "Teknik Destek", + + // Contact Page + "contact.title": "İletişim", + "contact.subtitle": "Sorularınız için bizimle iletişime geçin", + "contact.info.title": "İletişim Bilgileri", + "contact.address": "Adres", + "contact.address.full": "Barbaros Mah. Ahlat Sok. Varyap Meridian Sitesi D1 Blok Daire 115 Kat 14 PK:34746 Ataşehir İstanbul", + "contact.phone": "Telefon", + "contact.email": "E-posta", + "contact.taxOffice": "Vergi Dairesi", + "contact.taxNumber": "Vergi Numarası", + "contact.bank.title": "Banka Bilgileri", + "contact.workHours": "Çalışma Saatleri", + "contact.workHours.weekday": "Hafta İçi: 09:00 - 18:00", + "contact.workHours.weekend": "Hafta Sonu: Kapalı", + "contact.workHours.whatsapp": "Whatsapp: 7/24", + "contact.transferForm": "Havale/EFT Bildirim Formu", + "contact.location": "Konumumuz", + + // About Page + "about.title": "Hakkımızda", + "about.subtitle": + "2012 yılından bu yana yazılım sektöründe faaliyet gösteriyoruz", + "about.stats.clients": "Mutlu Müşteri", + "about.stats.experience": "Yıllık Tecrübe", + "about.stats.support": "7/24 Destek", + "about.stats.countries": "Ülke", + "about.description.part1": + "Sözsoft Bilişim Hizmetleri, eğitim sektörünün dijital dönüşümüne katkı sağlamak amacıyla 2012 yılında kursyazilimi.com markasıyla kurulmuştur. Kuruluşumuzun temelinde, 15 yılı aşkın yazılım tecrübesi ve farklı sektörlerde edinilen güçlü bir birikim yatmaktadır. Uzun yıllar boyunca tekstil sektörünün önde gelen markalarına büyük ölçekli yazılım çözümleri sunan uzman kadromuz, bu tecrübesini eğitim sektörünün dinamik ihtiyaçlarıyla harmanlayarak yenilikçi projelere imza atmaktadır. Sözsoft, sadece yazılım geliştirmekle kalmaz; kurumlara özel, sürdürülebilir ve kullanıcı dostu sistemler geliştirerek gerçek iş değeri yaratmayı hedefler. “Alışılagelmişin dışında ayrıcalıklı hizmet ve her an ulaşılabilirlik” ilkesiyle hareket eden ekibimiz, eğitim kurumlarının operasyonel süreçlerini dijitalleştirerek, verimliliklerini artırmalarına ve çağın gerekliliklerine uyum sağlamalarına destek olmaktadır. Bugün Sözsoft, Türkiye’nin dört bir yanındaki eğitim kurumlarının güvenilir teknoloji çözüm ortağı olmanın gururunu taşımaktadır.", + "about.description.motto": '"Tutkumuz teknoloji, hedefimiz sürdürülebilir verimliliktir."', + "about.description.part2": + "Sözsoft olarak, yazılım çözümlerimizi sunmadan önce işimize sizi tanımakla başlıyoruz. İhtiyaçlarınızı doğru analiz edebilmek, karşılaştığınız sorunlara kalıcı ve sürdürülebilir çözümler üretebilmek amacıyla sadece teknik bir bakış açısıyla değil, işletmenizin işleyişine bütüncül bir perspektifle yaklaşıyoruz. İletişimimizi yalnızca yüzeyde bırakmıyor, sizinle aynı dili konuşan bir çözüm ortağı olmayı benimsiyoruz. Türkiye’de yalnızca yabancı dil okulları ve kurslara özel yazılım çözümleri sunan, bu alanda uzmanlaşmış bir yazılım evi olarak faaliyet gösteriyoruz. 15 yılı aşkın sektör tecrübemizi, eğitim kurumlarının günlük operasyonlarına değer katan, esnek ve kullanıcı dostu yazılımlara dönüştürüyoruz. Amacımız; kurumunuzu sadece bilgisayarınızdan değil, akıllı telefonunuzdan da rahatlıkla yönetebileceğiniz şekilde, size özel olarak tasarlanmış yazılımlar aracılığıyla yönetim süreçlerinizi kolaylaştırmaktır. Günümüzde zaman yönetimi ve rekabetin her geçen gün daha kritik hale geldiği bir ortamda, size maddi ve zaman açısından tasarruf sağlayacak, aynı zamanda operasyonel verimliliğinizi artıracak konforlu, güvenli ve rekabetçi sistemler sunmanın memnuniyetini yaşıyoruz. Yazılımlarımızı kullanmaya başladığınız andan itibaren, kurumunuzda görev alan eğitim danışmanları, koordinatörler, muhasebe birimi, yöneticiler ve kurucular; bilgi kirliliğinden uzak, düzenli ve entegre bir yapının getirdiği iş birliği ve verimliliği doğrudan hissedecektir. Sunduğumuz çözümler yalnızca teknik değil, aynı zamanda sizin iş yapış şeklinize uygun olarak geliştirilmiştir. Kolay, hızlı ve güvenlik aşamaları titizlikle düşünülmüş bir yapı sunuyor; aynı zamanda satış, kampanya ve reklam yönetiminizi destekleyecek, gelirlerinizi artırmanıza katkı sağlayacak araçlarla donatılmış yazılımlar geliştiriyoruz. Eğitim koordinatörlerinizin sınıf planlamalarında yaşadığı zorluklara çözüm sunan ve kurum içi tüm süreçlere entegre şekilde çalışan bu sistemle, işinize özel kalıcı bir çözüm sunuyoruz.", + "about.description.closing": + "Sizin için yazılım geliştiriyor, kurumunuz için çözümler üretiyoruz.", + "about.mission": "Misyonumuz", + "about.mission.desc": + "Müşterilerimizin dijital dönüşüm süreçlerinde yanlarında olarak, onların iş süreçlerini optimize etmek ve rekabet güçlerini artırmak için yenilikçi çözümler sunmak.", + "about.vision": "Vizyonumuz", + "about.vision.desc": + "Türkiye'nin ve bölgenin önde gelen yazılım şirketlerinden biri olarak, global pazarda söz sahibi olmak ve teknoloji dünyasına yön veren şirketler arasında yer almak.", + "about.team": "Ekibimiz", + "about.team.salesDirector": "Satış Direktörü", + "about.team.projectDirector": "Proje Direktörü", + "about.team.techDirector": "Teknik Koordinatör", + + // Blog Page + "blog.title": "Blog", + "blog.subtitle": + "Teknoloji dünyasındaki son gelişmeler ve yazılım trendleri", + "blog.posts.ai.title": "Yapay Zeka ve İş Dünyası", + "blog.posts.ai.excerpt": + "Yapay zekanın iş süreçlerine etkileri ve geleceği...", + "blog.posts.ai.date": "10 Mayıs 2024", + "blog.categories.technology": "Teknoloji", + "blog.posts.web.title": "Web Geliştirmede Son Trendler", + "blog.posts.web.excerpt": "Modern web geliştirme teknikleri ve araçları...", + "blog.posts.web.date": "5 Mayıs 2024", + "blog.categories.webdev": "Web Geliştirme", + "blog.posts.security.title": "Siber Güvenlik İpuçları", + "blog.posts.security.excerpt": + "İşletmenizi siber tehditlere karşı koruyun...", + "blog.posts.security.date": "1 Mayıs 2024", + "blog.categories.security": "Siber Güvenlik", + "blog.posts.mobile.title": "Mobil Uygulama Geliştirme Rehberi", + "blog.posts.mobile.excerpt": + "Başarılı bir mobil uygulama geliştirmek için ipuçları...", + "blog.posts.mobile.date": "25 Nisan 2024", + "blog.categories.mobile": "Mobil", + "blog.posts.database.title": "Veritabanı Yönetimi Temelleri", + "blog.posts.database.excerpt": "Veritabanı tasarımı ve optimizasyonu...", + "blog.posts.database.date": "20 Nisan 2024", + "blog.categories.database": "Veritabanı", + "blog.posts.digital.title": "Dijital Pazarlama Stratejileri", + "blog.posts.digital.excerpt": "İşletmenizi dijital dünyada büyütün...", + "blog.posts.digital.date": "April 15, 2024", + "blog.categories.digital": "Dijital Pazarlama", + "blog.subscribe": "Bültene Abone Ol", + "blog.subscribe.desc": + "Teknoloji ve yazılım dünyasındaki güncel gelişmelerden haberdar olmak için bültenimize abone olun.", + "blog.backToBlog": "Bloglar", + + // Testimonials Section + "testimonials.title": "Müşteri Yorumları", + + // Common + "common.learnMore": "Detaylı Bilgi", + "common.contact": "Bugün bize katılın ve çözümlerimizle işinizi dönüştürün.", + "common.getStarted": "Başlamaya Hazır Mısınız?", + "common.readMore": "Devamını Oku", + "common.subscribe": "Abone Ol", + "common.send": "Gönder", + "common.name": "Ad", + "common.surname": "Soyad", + "common.email": "E-posta", + "common.phone": "Telefon", + "common.message": "Mesaj", + "common.address": "Adres", + "common.city": "Şehir", + "common.company": "Şirket Adı", + "common.fullName": "Adınız Soyadınız", + "common.branchCount": "Şube Adedi", + "common.userCount": "Kullanıcı Adedi", + + // Footer + "footer.companyInfo": + "20 yılı aşkın tecrübemizle işletmenizi dijital dünyada bir adım öne taşıyoruz. Yenilikçi çözümlerle geleceğin teknolojilerini bugünden sunuyoruz.", + "footer.quickLinksTitle": "Hızlı Bağlantılar", + "footer.servicesTitle": "Hizmetlerimiz", + "footer.address": "Barbaros Mah. Ahlat Sok. Varyap Meridian Sitesi D1 Blok Daire 115 Kat 14 PK:34746 Ataşehir İstanbul", + "footer.copyright": "Tüm hakları saklıdır.", + "footer.privacyPolicy": "Gizlilik Politikası", + "footer.termsOfUse": "Kullanım Şartları", + "footer.sitemap": "Site Haritası", + }, + en: { + // Navigation + "nav.home": "Home", + "nav.about": "About Us", + "nav.products": "Products", + "nav.services": "Services", + "nav.demo": "Demo", + "nav.blog": "Blog", + "nav.contact": "Contact", + + // Hero Section + "hero.title": "Pioneer of Digital Transformation", + "hero.subtitle": + "With over 20 years of experience, we take your business one step ahead in the digital world. We deliver tomorrow’s technologies today with innovative solutions.", + "hero.cta.consultation": "Get a Consultation", + "hero.cta.discover": "Discover Our Services", + "hero.service1.title": "Custom Software Development", + "hero.service1.desc": + "Scalable software solutions tailored to your business", + "hero.service2.title": "Web Applications", + "hero.service2.desc": "Modern and user-friendly web applications", + "hero.service3.title": "System Integration", + "hero.service3.desc": "Seamless integration with your existing systems", + + // Features Section + "features.title": "Why Sözsoft?", + "features.subtitle": + "We provide solutions that drive your business to success in the digital world.", + "features.reliable": "Reliable Solutions", + "features.reliable.desc": + "We offer reliable and sustainable software solutions with 20 years of experience.", + "features.rapid": "Rapid Development", + "features.rapid.desc": + "We develop fast and effective solutions using modern technologies.", + "features.expert": "Expert Team", + "features.expert.desc": + "Our experienced and expert team brings your projects to life.", + "features.scalable": "Scalable Systems", + "features.scalable.desc": + "We design scalable systems that grow with your business.", + + // Solutions Section + "solutions.title": "Our Solutions", + "solutions.subtitle": + "Technology solutions customized for your business needs", + "solutions.web.title": "Web Applications", + "solutions.web.desc": "We build modern and user-friendly web applications.", + "solutions.mobile.title": "Mobile Applications", + "solutions.mobile.desc": + "We develop native mobile applications for iOS and Android.", + "solutions.custom.title": "Custom Software", + "solutions.custom.desc": + "We provide software solutions tailored to your business.", + "solutions.database.title": "Database Systems", + "solutions.database.desc": + "We set up secure and high-performance database systems.", + + // Products Page + "products.title": "Our Products", + "products.subtitle": + "Software solutions developed specifically for your business needs", + "products.kurs.title": "ERP Solution", + "products.kurs.desc": + "Manage all your business processes from a single platform.", + "products.crm.title": "CRM System", + "products.crm.desc": "Manage your customer relationships effectively.", + "products.ecommerce.title": "E-Commerce Platform", + "products.ecommerce.desc": "Strengthen your online sales channel.", + "products.hr.title": "Human Resources Software", + "products.hr.desc": "Digitize your HR processes.", + "products.kurs.features.inventory": "Inventory Management", + "products.kurs.features.purchasing": "Purchasing Management", + "products.kurs.features.sales": "Sales Management", + "products.kurs.features.accounting": "Accounting Management", + "products.kurs.features.reporting": "Reporting", + "products.kurs.features.mobile": "Mobile Access", + "products.crm.features.tracking": "Customer Tracking", + "products.crm.features.opportunities": "Opportunity Management", + "products.crm.features.email": "Email Integration", + "products.crm.features.tasks": "Task Management", + "products.crm.features.calendar": "Calendar Integration", + "products.crm.features.analytics": "Analytics Reporting", + "products.ecommerce.features.responsive": "Responsive Design", + "products.ecommerce.features.payment": "Secure Payment Systems", + "products.ecommerce.features.inventory": "Inventory Management", + "products.ecommerce.features.seo": "SEO Optimization", + "products.ecommerce.features.analytics": "E-Commerce Analytics", + "products.ecommerce.features.marketplace": "Marketplace Integration", + "products.hr.features.personnel": "Personnel Management", + "products.hr.features.leave": "Leave Management", + "products.hr.features.performance": "Performance Management", + "products.hr.features.payroll": "Payroll Management", + "products.hr.features.training": "Training Management", + "products.hr.features.digital": "Digital HR Processes", + "products.cta.title": "Learn More", + "products.cta.description": + "Explore our products to find the best solutions for your business needs or contact us.", + "products.cta.demo": "Request a Demo", + "services.cta.title": "Start Your Digital Transformation Journey", + "services.cta.description": + "Gain a competitive edge with our tailored solutions. Contact us for a consultation.", + "services.cta.contact": "Get in Touch", + "demo.form.title": "Demo Request Form", + "demo.subtitle": "Contact us for any inquiries. We are happy to assist you.", + + // Services Page + "services.title": "Our Services", + "services.subtitle": + "All the technology solutions your business needs on its digital transformation journey", + "services.software.title": "Custom Software Development", + "services.software.desc": + "Software solutions tailored to your business needs", + "services.web.title": "Web Applications", + "services.web.desc": "Modern and user-friendly web applications", + "services.mobile.title": "Mobile Applications", + "services.mobile.desc": "Native applications for iOS and Android", + "services.database.title": "Database Solutions", + "services.database.desc": "Secure and scalable database systems", + "services.software.features.analysis": "Analysis and Planning", + "services.software.features.design": "Design and Architecture", + "services.software.features.development": "Software Development", + "services.software.features.testing": "Testing and Quality Assurance", + "services.software.features.maintenance": "Maintenance and Support", + "services.web.features.frontend": "Frontend Development", + "services.web.features.backend": "Backend Development", + "services.web.features.api": "API Development", + "services.web.features.seo": "SEO Optimization", + "services.web.features.performance": "Performance Optimization", + "services.mobile.features.design": "Mobile App Design", + "services.mobile.features.native": "Native Mobile App Development", + "services.mobile.features.cross": "Cross-Platform Mobile App Development", + "services.mobile.features.push": "Push Notification Integration", + "services.mobile.features.store": "App Store & Google Play Deployment", + "services.database.features.design": "Database Design", + "services.database.features.optimization": "Database Optimization", + "services.database.features.migration": "Database Migration", + "services.database.features.backup": "Database Backup", + "services.database.features.recovery": "Database Recovery", + "services.integration.title": "System Integration", + "services.integration.desc": + "Data flow and integration solutions between different systems", + "services.integration.features.api": "API Integration", + "services.integration.features.middleware": "Middleware Development", + "services.integration.features.legacy": "Legacy System Integration", + "services.integration.features.realtime": "Real-Time Data Integration", + "services.integration.features.monitoring": + "Integration Monitoring & Management", + "services.consulting.title": "Technology Consulting", + "services.consulting.desc": + "Expert consulting for your technology strategy and roadmap", + "services.consulting.features.tech": "Technology Strategy", + "services.consulting.features.project": "Project Management Consulting", + "services.consulting.features.digital": "Digital Transformation Consulting", + "services.consulting.features.risk": "Risk Management Consulting", + "services.consulting.features.training": "Technology Training", + "services.security.title": "Cybersecurity", + "services.security.desc": + "Protect your digital assets against cyber threats", + "services.security.features.analysis": "Vulnerability Analysis", + "services.security.features.penetration": "Penetration Testing", + "services.security.features.firewall": "Firewall Management", + "services.security.features.ssl": "SSL Certificate Management", + "services.security.features.training": "Cybersecurity Training", + "services.maintenance.title": "Maintenance & Support", + "services.maintenance.desc": + "Comprehensive maintenance and support services to keep your software running smoothly", + "services.maintenance.features.monitoring": "System Monitoring", + "services.maintenance.features.bugfix": "Bug Fixing", + "services.maintenance.features.performance": "Performance Improvement", + "services.maintenance.features.updates": "Update Management", + "services.maintenance.features.support": "Technical Support", + + // Contact Page + "contact.title": "Contact", + "contact.subtitle": "Get in touch with us for any inquiries", + "contact.info.title": "Contact Information", + "contact.address": "Address", + "contact.address.full": "Barbaros Mah. Ahlat Sok. Varyap Meridian Sitesi D1 Blok Daire 115 Kat 14 PK:34746 Ataşehir İstanbul", + "contact.phone": "Phone", + "contact.email": "Email", + "contact.taxOffice": "Tax Office", + "contact.taxNumber": "Tax Number", + "contact.bank.title": "Bank Details", + "contact.workHours": "Working Hours", + "contact.workHours.weekday": "Weekdays: 09:00 - 18:00", + "contact.workHours.weekend": "Weekend: Closed", + "contact.workHours.whatsapp": "24/7", + "contact.transferForm": "Wire Transfer Notification Form", + "contact.location": "Our Location", + + // About Page + "about.title": "About Us", + "about.subtitle": "We have been operating in the software industry since 2012", + "about.stats.clients": "Happy Clients", + "about.stats.experience": "Years of Experience", + "about.stats.support": "24/7 Support", + "about.stats.countries": "Countries", + "about.description.part1": + "Sözsoft Information Technologies was founded in 2012 under the brand kursyazilimi.com to contribute to the digital transformation of the education sector. Our foundation is built on over 15 years of software experience and a strong background gained across various industries. Our expert team, which has developed large-scale software solutions for leading textile companies for many years, now channels its experience into the dynamic needs of the education sector by delivering innovative projects. At Sözsoft, we don’t just develop software; we aim to create real business value by building sustainable and user-friendly systems tailored to institutions. Guided by the principle of 'exclusive service beyond the ordinary and constant accessibility', our team supports educational institutions in digitizing their operational processes to enhance efficiency and adapt to the demands of the modern age. Today, Sözsoft proudly serves as a trusted technology partner for educational institutions across Turkey.", + "about.description.motto": '"Our passion is technology, our goal is sustainable efficiency."', + "about.description.part2": + "At Sözsoft, we start by understanding you before offering our software solutions. To analyze your needs accurately and provide permanent, sustainable solutions to the problems you face, we approach your organization not just from a technical angle, but with a holistic perspective. We aim to be more than a service provider—your strategic partner who speaks your language. As a specialized software house serving only language schools and educational centers in Turkey, we transform over 15 years of industry experience into flexible, user-friendly software that adds value to your operations. Our goal is to simplify your management processes with customized software you can manage even from your smartphone. In an age where time management and competition are more critical than ever, we take pride in delivering comfortable, secure, and competitive systems that save you both time and resources. From the moment you begin using our software, your education consultants, coordinators, accounting staff, managers, and founders will experience the power of an organized, integrated structure free from information overload. Our solutions are not only technical but tailored to your operational style. We provide a system designed with simplicity, speed, and security in mind—offering tools to support your sales, marketing, and advertising efforts while helping you increase revenue. With full integration into all institutional processes and the ability to solve planning issues for education coordinators, we deliver a lasting solution designed specifically for your business.", + "about.description.closing": + "We develop software for you and create solutions for your institution.", + "about.mission": "Our Mission", + "about.mission.desc": + "To support our clients in their digital transformation journeys by providing innovative solutions that optimize their business processes and enhance their competitive strength.", + "about.vision": "Our Vision", + "about.vision.desc": + "To become one of the leading software companies in Turkey and the region, and to take our place among the global leaders shaping the world of technology.", + "about.team": "Our Team", + "about.team.salesDirector": "Sales Director", + "about.team.projectDirector": "Project Director", + "about.team.techDirector": "Technic Coordinator", + + + // Blog Page + "blog.title": "Blog", + "blog.subtitle": + "Latest developments and software trends in the tech world", + "blog.posts.ai.title": "Artificial Intelligence and Business", + "blog.posts.ai.excerpt": + "The impacts and future of AI in business processes...", + "blog.posts.ai.date": "May 10, 2024", + "blog.categories.technology": "Technology", + "blog.posts.web.title": "Latest Trends in Web Development", + "blog.posts.web.excerpt": "Modern web development techniques and tools...", + "blog.posts.web.date": "May 5, 2024", + "blog.categories.webdev": "Web Development", + "blog.posts.security.title": "Cybersecurity Tips", + "blog.posts.security.excerpt": + "Protect your business against cyber threats...", + "blog.posts.security.date": "May 1, 2024", + "blog.categories.security": "Cybersecurity", + "blog.posts.mobile.title": "Mobile App Development Guide", + "blog.posts.mobile.excerpt": "Tips for building a successful mobile app...", + "blog.posts.mobile.date": "April 25, 2024", + "blog.categories.mobile": "Mobile", + "blog.posts.database.title": "Fundamentals of Database Management", + "blog.posts.database.excerpt": "Database design and optimization...", + "blog.posts.database.date": "April 20, 2024", + "blog.categories.database": "Database", + "blog.posts.digital.title": "Digital Marketing Strategies", + "blog.posts.digital.excerpt": "Grow your business in the digital world...", + "blog.posts.digital.date": "April 15, 2024", + "blog.categories.digital": "Digital Marketing", + "blog.subscribe": "Subscribe to Newsletter", + "blog.subscribe.desc": + "Subscribe to our newsletter to stay updated on the latest tech and software news.", + "blog.backToBlog": "Blogs", + + // Testimonials Section + "testimonials.title": "Testimonials", + + // Common + "common.learnMore": "Learn More", + "common.contact": "Join us today and transform your business with our solutions.", + "common.getStarted": "Ready to Get Started?", + "common.readMore": "Read More", + "common.subscribe": "Subscribe", + "common.send": "Send", + "common.name": "First Name", + "common.surname": "Last Name", + "common.email": "Email", + "common.phone": "Phone", + "common.message": "Message", + "common.address": "Address", + "common.city": "City", + "common.company": "Company Name", + "common.fullName": "Full Name", + "common.branchCount": "Number of Branches", + "common.userCount": "Number of Users", + + // Footer + "footer.companyInfo": + "With over 20 years of experience, we take your business one step ahead in the digital world. We deliver tomorrow’s technologies today with innovative solutions.", + "footer.quickLinksTitle": "Quick Links", + "footer.servicesTitle": "Our Services", + "footer.address": "Barbaros Mah. Ahlat Sok. Varyap Meridian Sitesi D1 Blok Daire 115 Kat 14 PK:34746 Ataşehir İstanbul", + "footer.copyright": "All rights reserved.", + "footer.privacyPolicy": "Privacy Policy", + "footer.termsOfUse": "Terms of Use", + "footer.sitemap": "Sitemap", + }, +}; + +const LanguageContext = createContext({ + language: "tr", + setLanguage: () => {}, + t: () => "", +}); + +export const LanguageProvider: React.FC<{ children: React.ReactNode }> = ({ + children, +}) => { + const [language, setLanguage] = useState("tr"); + + const t = (key: string): string => { + return ( + translations[language][ + key as keyof (typeof translations)[typeof language] + ] || key + ); + }; + + return ( + + {children} + + ); +}; + +export const useLanguage = () => useContext(LanguageContext); diff --git a/company/src/index.css b/company/src/index.css new file mode 100644 index 00000000..b5c61c95 --- /dev/null +++ b/company/src/index.css @@ -0,0 +1,3 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; diff --git a/company/src/locales/blogContent.ts b/company/src/locales/blogContent.ts new file mode 100644 index 00000000..dcbb47f7 --- /dev/null +++ b/company/src/locales/blogContent.ts @@ -0,0 +1,203 @@ +export interface BlogPostContent { + title: string; + excerpt: string; + content: string; + date: string; + category: string; + readTime: string; +} + +export interface BlogPosts { + [key: string]: { + tr: BlogPostContent; + en: BlogPostContent; + image: string; + author: string; + }; +} + +export const blogContent: BlogPosts = { + 'ai-ve-gelecegi': { + tr: { + title: 'blog.posts.ai.title', + excerpt: 'blog.posts.ai.excerpt', + content: `Yapay zeka (YZ), günümüzün en hızlı gelişen ve dönüştürücü teknolojilerinden biridir. Makine öğrenimi, doğal dil işleme ve bilgisayar görüşü gibi alanlardaki ilerlemeler, YZ'nin hayatımızın birçok alanında etkili olmasını sağlamıştır. Akıllı asistanlardan otonom araçlara, tıbbi teşhislerden finansal analizlere kadar geniş bir yelpazede YZ uygulamalarıyla karşılaşıyoruz. + +YZ'nin geleceği parlak görünmekle birlikte, beraberinde önemli etik, sosyal ve ekonomik zorlukları da getiriyor. YZ'nin karar alma süreçlerindeki şeffaflık, algoritmik yanlılık, iş gücü piyasası üzerindeki potansiyel etkileri ve YZ'nin kötüye kullanımı gibi konular, küresel düzeyde dikkatle ele alınması gereken meselelerdir. + +Bu blog yazısında, yapay zekanın mevcut yeteneklerini, farklı sektörlerdeki kullanım alanlarını ve gelecekteki potansiyelini detaylı bir şekilde inceleyeceğiz. Ayrıca, YZ'nin sorumlu bir şekilde geliştirilmesi ve kullanılması için atılması gereken adımları ve bu alandaki güncel tartışmaları ele alarak, yapay zekanın geleceğine dair kapsamlı bir bakış sunacağız.`, + date: 'blog.posts.ai.date', + category: 'blog.categories.technology', + readTime: "5 dk", + }, + en: { + title: 'blog.posts.ai.title', + excerpt: 'blog.posts.ai.excerpt', + content: `Artificial Intelligence (AI) is one of the fastest-growing and most transformative technologies today. Advances in areas such as machine learning, natural language processing, and computer vision have enabled AI to be effective in many areas of our lives. We encounter AI applications in a wide range of fields, from smart assistants to autonomous vehicles, medical diagnostics to financial analysis. + +While the future of AI looks bright, it also brings significant ethical, social, and economic challenges. Issues such as transparency in AI decision-making processes, algorithmic bias, potential impacts on the labor market, and the misuse of AI are matters that need to be carefully addressed globally. + +In this blog post, we will delve into the current capabilities of artificial intelligence, its applications in various sectors, and its future potential. Furthermore, we will discuss the steps that need to be taken for the responsible development and use of AI and the current debates in this field, providing a comprehensive outlook on the future of artificial intelligence.`, + date: 'blog.posts.ai.date', + category: 'blog.categories.technology', + readTime: "5 dk", + }, + image: 'https://images.pexels.com/photos/8386434/pexels-photo-8386434.jpeg?auto=compress&cs=tinysrgb&w=1920', + author: "Ahmet Yılmaz", + }, + 'web-gelistirmede-son-trendler': { + tr: { + title: 'blog.posts.web.title', + excerpt: 'blog.posts.web.excerpt', + content: `Web geliştirme dünyası sürekli bir değişim ve evrim içinde. Her yıl yeni teknolojiler, frameworkler ve yaklaşımlar ortaya çıkıyor, bu da web geliştiricilerinin sürekli öğrenmesini ve adapte olmasını gerektiriyor. 2024 yılı da bu açıdan farklı değil; heyecan verici yeni trendler ve gelişmeler web ekosistemini şekillendiriyor. + +Bu yılın öne çıkan trendlerinden biri Serverless mimarilerin yükselişi. Geliştiricilerin sunucu yönetimiyle uğraşmadan uygulama geliştirmesine olanak tanıyan Serverless, maliyet etkinliği ve ölçeklenebilirlik gibi avantajlar sunuyor. Bir diğer önemli trend ise WebAssembly (Wasm). Web tarayıcılarında yüksek performanslı kod çalıştırmayı mümkün kılan Wasm, oyunlar, video düzenleyiciler ve CAD yazılımları gibi daha karmaşık uygulamaların web'e taşınmasını sağlıyor. + +Mikro ön uçlar da büyük ölçekli web uygulamalarının yönetimini kolaylaştıran bir mimari desen olarak popülerlik kazanıyor. Bu yaklaşım, büyük ön uç projelerini daha küçük, bağımsız parçalara ayırarak farklı ekiplerin aynı proje üzerinde paralel çalışmasına imkan tanıyor. Bu blog yazısında, bu ve benzeri web geliştirme trendlerini daha detaylı inceleyerek, geleceğin web uygulamalarını şekillendiren teknolojilere derinlemesine bir bakış sunacağız.`, + date: 'blog.posts.web.date', + category: 'blog.categories.webdev', + readTime: "7 dk", + }, + en: { + title: 'blog.posts.web.title', + excerpt: 'blog.posts.web.excerpt', + content: `The world of web development is in a constant state of change and evolution. Every year, new technologies, frameworks, and approaches emerge, requiring web developers to continuously learn and adapt. 2024 is no different in this regard; exciting new trends and developments are shaping the web ecosystem. + +One of the prominent trends this year is the rise of Serverless architectures. Enabling developers to build applications without managing servers, Serverless offers advantages such as cost-effectiveness and scalability. Another significant trend is WebAssembly (Wasm). Allowing high-performance code to run in web browsers, Wasm makes it possible to bring more complex applications like games, video editors, and CAD software to the web. + +Micro frontends are also gaining popularity as an architectural pattern that simplifies the management of large-scale web applications. This approach allows breaking down large frontend projects into smaller, independent pieces, enabling different teams to work on the same project in parallel. In this blog post, we will delve deeper into these and similar web development trends, providing an in-depth look at the technologies shaping the future of web applications.`, + date: 'blog.posts.web.date', + category: 'blog.categories.webdev', + readTime: "7 dk", + }, + image: 'https://images.pexels.com/photos/11035471/pexels-photo-11035471.jpeg?auto=compress&cs=tinysrgb&w=1920', + author: "Mehmet Kaya", + }, + 'siber-guvenlik-tehditleri-ve-korunma-yollari': { + tr: { + title: 'blog.posts.security.title', + excerpt: 'blog.posts.security.excerpt', + content: `Dijitalleşmenin hızla artmasıyla birlikte, siber güvenlik tehditlerinin sayısı ve karmaşıklığı da eş zamanlı olarak artmaktadır. Artık sadece büyük şirketler değil, bireyler ve küçük işletmeler de siber saldırganların hedefi haline gelmiştir. Kişisel verilerin çalınması, kimlik avı (phishing) saldırıları, fidye yazılımları (ransomware) ve dağıtılmış hizmet engelleme (DDoS) saldırıları gibi tehditler, hem maddi hem de manevi zararlara yol açabilmektedir. + +Bu tehditlere karşı korunmak, dijital dünyada güvende kalmak için hayati öneme sahiptir. Güçlü ve benzersiz şifreler kullanmak, iki faktörlü kimlik doğrulama yöntemlerini benimsemek ve yazılımlarımızı düzenli olarak güncellemek, alabileceğimiz temel önlemler arasındadır. Ayrıca, bilinmeyen kaynaklardan gelen e-postalara ve linklere karşı dikkatli olmak, halka açık Wi-Fi ağlarında hassas işlemler yapmaktan kaçınmak da önemlidir. + +Bu blog yazısında, güncel siber güvenlik tehditlerini daha detaylı bir şekilde inceleyeceğiz. Her bir tehdit türünün nasıl çalıştığını, potansiyel etkilerini ve bu tehditlere karşı bireysel ve kurumsal düzeyde alınabilecek en etkili korunma yollarını ele alacağız. Siber güvenlik bilincini artırmak ve dijital varlıklarımızı korumak için pratik ipuçları sunarak, daha güvenli bir çevrimiçi deneyim için rehberlik edeceğiz.`, + date: 'blog.posts.security.date', + category: 'blog.categories.security', + readTime: "6 dk", + }, + en: { + title: 'blog.posts.security.title', + excerpt: 'blog.posts.security.excerpt', + content: `With the rapid increase in digitalization, the number and complexity of cyber security threats are also increasing simultaneously. Not only large corporations but also individuals and small businesses have become targets for cyber attackers. Threats such as personal data theft, phishing attacks, ransomware, and distributed denial-of-service (DDoS) attacks can cause both financial and emotional damage. + +Protecting against these threats is vital for staying safe in the digital world. Using strong and unique passwords, adopting two-factor authentication methods, and regularly updating our software are among the basic precautions we can take. Furthermore, it is important to be cautious about emails and links from unknown sources and to avoid performing sensitive transactions on public Wi-Fi networks. + +In this blog post, we will examine current cyber security threats in more detail. We will discuss how each type of threat works, its potential impacts, and the most effective ways to protect against these threats at both individual and organizational levels. By providing practical tips to increase cyber security awareness and protect our digital assets, we will offer guidance for a safer online experience.`, + date: 'blog.posts.security.date', + category: 'blog.categories.security', + readTime: "6 dk", + }, + image: 'https://images.pexels.com/photos/5380642/pexels-photo-5380642.jpeg?auto=compress&cs=tinysrgb&w=1920', + author: "Ayşe Demir", + }, + 'mobil-uygulama-gelistirmede-cross-platform-cozumler': { + tr: { + title: 'blog.posts.mobile.title', + excerpt: 'blog.posts.mobile.excerpt', + content: `Mobil uygulama geliştirme, günümüzün en dinamik ve talep gören yazılım alanlarından biridir. Akıllı telefonların yaygınlaşmasıyla birlikte, işletmeler ve bireyler mobil platformlarda yer almak için sürekli yeni uygulamalar geliştirmektedir. Geleneksel olarak, iOS ve Android gibi farklı mobil işletim sistemleri için ayrı ayrı native uygulamalar geliştirmek gerekiyordu, bu da zaman ve kaynak açısından maliyetli olabiliyordu. + +Ancak son yıllarda, cross-platform (çapraz platform) mobil geliştirme frameworkleri popülerlik kazanmıştır. Bu frameworkler, geliştiricilerin tek bir kod tabanı kullanarak hem iOS hem de Android platformları için uygulama geliştirmesine olanak tanır. Bu yaklaşım, geliştirme sürecini hızlandırır, maliyetleri düşürür ve bakım kolaylığı sağlar. React Native, Flutter ve Xamarin gibi frameworkler, cross-platform geliştirme alanında öne çıkan çözümlerdir. + +Bu blog yazısında, cross-platform mobil geliştirmenin avantajlarını ve dezavantajlarını detaylı bir şekilde inceleyeceğiz. Farklı frameworklerin özelliklerini, performanslarını ve hangi senaryolarda daha uygun olduklarını karşılaştıracağız. Mobil uygulama geliştirme projeniz için en doğru cross-platform çözümü seçmenize yardımcı olacak bilgiler sunarak, geliştirme sürecinizi daha verimli hale getirmeniz için rehberlik edeceğiz.`, + date: 'blog.posts.mobile.date', + category: 'blog.categories.mobile', + readTime: "4 dk", + }, + en: { + title: 'blog.posts.mobile.title', + excerpt: 'blog.posts.mobile.excerpt', + content: `Mobile application development is one of the most dynamic and in-demand software fields today. With the widespread adoption of smartphones, businesses and individuals are constantly developing new applications to have a presence on mobile platforms. Traditionally, it was necessary to develop separate native applications for different mobile operating systems like iOS and Android, which could be costly in terms of time and resources. + +However, in recent years, cross-platform mobile development frameworks have gained popularity. These frameworks allow developers to build applications for both iOS and Android platforms using a single codebase. This approach accelerates the development process, reduces costs, and provides ease of maintenance. Frameworks like React Native, Flutter, and Xamarin are prominent solutions in the field of cross-platform development. + +In this blog post, we will delve into the advantages and disadvantages of cross-platform mobile development in detail. We will compare the features and performance of different frameworks and discuss in which scenarios they are more suitable. By providing information to help you choose the right cross-platform solution for your mobile application development project, we will guide you to make your development process more efficient.`, + date: 'blog.posts.mobile.date', + category: 'blog.categories.mobile', + readTime: "4 dk", + }, + image: 'https://images.pexels.com/photos/13017583/pexels-photo-13017583.jpeg?auto=compress&cs=tinysrgb&w=1920', + author: "Can Öztürk", + }, + 'veritabani-yonetim-sistemleri-karsilastirmasi': { + tr: { + title: 'blog.posts.database.title', + excerpt: 'blog.posts.database.excerpt', + content: `Veritabanları, modern yazılım uygulamalarının kalbidir. Uygulamaların veriyi depolaması, yönetmesi ve erişmesi için güvenilir ve etkili bir veritabanı yönetim sistemi (VTYS) seçimi kritik öneme sahiptir. Piyasada birçok farklı türde VTYS bulunmaktadır ve her birinin kendine özgü avantajları ve dezavantajları vardır. Doğru VTYS seçimi, uygulamanın performansı, ölçeklenebilirliği, güvenliği ve geliştirme süreci üzerinde doğrudan bir etkiye sahiptir. + +İlişkisel veritabanları (RDBMS), veriyi tablolar halinde düzenler ve SQL (Yapısal Sorgu Dili) kullanarak verilere erişim sağlar. MySQL, PostgreSQL, Oracle ve SQL Server gibi sistemler bu kategoriye girer. RDBMS'ler, veri tutarlılığı ve karmaşık sorgular için güçlü yetenekler sunar. Ancak, büyük ölçekli ve yapısal olmayan verilerle çalışırken performans sorunları yaşanabilir. + +NoSQL (Not Only SQL) veritabanları ise daha esnek veri modelleri sunar ve genellikle büyük ölçekli, dağıtık sistemler ve hızlı veri erişimi gerektiren uygulamalar için tercih edilir. MongoDB (belge tabanlı), Cassandra (geniş sütunlu) ve Redis (anahtar-değer) gibi sistemler NoSQL kategorisine örnektir. NoSQL veritabanları, yatay ölçeklenebilirlik ve yüksek erişilebilirlik sağlama konusunda genellikle RDBMS'lerden daha iyidir. Bu blog yazısında, ilişkisel ve NoSQL veritabanı yönetim sistemlerini detaylı bir şekilde karşılaştırarak, farklı kullanım senaryolarına göre hangi VTYS'nin daha uygun olduğunu ele alacağız.`, + date: 'blog.posts.database.date', + readTime: "8 dk", + category: 'blog.categories.database', + }, + en: { + title: 'blog.posts.database.title', + excerpt: 'blog.posts.database.excerpt', + content: `Databases are the heart of modern software applications. Choosing a reliable and effective database management system (DBMS) is crucial for applications to store, manage, and access data. There are many different types of DBMS available in the market, each with its own unique advantages and disadvantages. The right DBMS choice has a direct impact on the application's performance, scalability, security, and development process. + +Relational database management systems (RDBMS) organize data in tables and provide access to data using SQL (Structured Query Language). Systems like MySQL, PostgreSQL, Oracle, and SQL Server fall into this category. RDBMSs offer strong capabilities for data consistency and complex queries. However, performance issues can arise when working with large-scale and unstructured data. + +NoSQL (Not Only SQL) databases, on the other hand, offer more flexible data models and are generally preferred for large-scale, distributed systems and applications requiring fast data access. Systems like MongoDB (document-based), Cassandra (wide-column), and Redis (key-value) are examples of NoSQL databases. NoSQL databases are generally better than RDBMSs at providing horizontal scalability and high availability. In this blog post, we will compare relational and NoSQL database management systems in detail, discussing which DBMS is more suitable for different use cases.`, + date: 'blog.posts.database.date', + readTime: "8 dk", + category: 'blog.categories.database', + }, + image: 'https://images.pexels.com/photos/325229/pexels-photo-325229.jpeg?auto=compress&cs=tinysrgb&w=1920', + author: "Zeynep Yıldız", + }, + 'dijital-pazarlamada-veri-analizi': { + tr: { + title: 'blog.posts.digital.title', + excerpt: 'blog.posts.digital.excerpt', + content: `Dijital pazarlama dünyası, sürekli değişen algoritmalar, yeni platformlar ve gelişen tüketici davranışlarıyla dinamik bir yapıya sahiptir. Bu karmaşık ortamda başarılı olmak için, pazarlamacıların verilere dayalı kararlar alması ve stratejilerini sürekli olarak optimize etmesi gerekmektedir. İşte tam bu noktada veri analizi devreye girer. Dijital pazarlamada veri analizi, kampanyaların performansını ölçmek, müşteri davranışlarını anlamak, hedef kitleyi daha iyi tanımak ve pazarlama yatırımlarının geri dönüşünü (ROI) maksimize etmek için kritik bir araçtır. + +Veri analizi sayesinde, hangi pazarlama kanallarının en etkili olduğunu belirleyebilir, hangi içerik türlerinin daha fazla etkileşim aldığını anlayabilir ve müşteri yolculuğunun farklı aşamalarındaki performans darboğazlarını tespit edebiliriz. Google Analytics, Adobe Analytics gibi web analizi araçları, sosyal medya analiz platformları ve müşteri ilişkileri yönetimi (CRM) sistemleri, dijital pazarlamacılara değerli veriler sunar. Bu verilerin doğru bir şekilde toplanması, temizlenmesi, analiz edilmesi ve yorumlanması, daha bilinçli ve etkili pazarlama stratejileri oluşturmanın temelini oluşturur. + +Bu blog yazısında, dijital pazarlamada veri analizinin neden bu kadar önemli olduğunu detaylı bir şekilde ele alacağız. Kullanılan temel metrikleri (örneğin, dönüşüm oranı, tıklama oranı, müşteri edinme maliyeti), farklı analiz yöntemlerini ve veri görselleştirme tekniklerini inceleyeceğiz. Ayrıca, veri analizinden elde edilen içgörüleri pazarlama stratejilerine nasıl entegre edebileceğinize dair pratik ipuçları sunarak, dijital pazarlama çabalarınızın etkinliğini artırmanız için rehberlik edeceğiz.`, + date: 'blog.posts.digital.date', + readTime: "6 dk", + category: 'blog.categories.digital', + }, + en: { + title: 'blog.posts.digital.title', + excerpt: 'blog.posts.digital.excerpt', + content: `The world of digital marketing is dynamic, with constantly changing algorithms, new platforms, and evolving consumer behavior. To succeed in this complex environment, marketers need to make data-driven decisions and continuously optimize their strategies. This is where data analysis comes into play. In digital marketing, data analysis is a critical tool for measuring campaign performance, understanding customer behavior, getting to know the target audience better, and maximizing the return on marketing investments (ROI). + +Through data analysis, we can determine which marketing channels are most effective, understand which types of content receive more engagement, and identify performance bottlenecks at different stages of the customer journey. Web analytics tools like Google Analytics and Adobe Analytics, social media analytics platforms, and customer relationship management (CRM) systems provide valuable data to digital marketers. The accurate collection, cleaning, analysis, and interpretation of this data form the basis for creating more informed and effective marketing strategies. + +In this blog post, we will delve into why data analysis is so important in digital marketing. We will examine key metrics used (e.g., conversion rate, click-through rate, customer acquisition cost), different analysis methods, and data visualization techniques. Furthermore, we will provide practical tips on how to integrate insights gained from data analysis into your marketing strategies, guiding you to increase the effectiveness of your digital marketing efforts.`, + date: 'blog.posts.digital.date', + readTime: "6 dk", + category: 'blog.categories.digital', + }, + image: 'https://images.pexels.com/photos/7681091/pexels-photo-7681091.jpeg?auto=compress&cs=tinysrgb&w=1920', + author: "Ali Kara", + }, +}; + +// Blog yazılarının listesi (Blog.tsx'te kullanılacak) +export const blogPostsList = Object.keys(blogContent).map(slug => { + const post = blogContent[slug].tr; // Varsayılan olarak Türkçe içeriği kullanıyoruz, dil bağlamına göre değiştirilebilir + return { + slug, + title: post.title, + excerpt: post.excerpt, + image: blogContent[slug].image, // Görsel bilgisi blogContent'ten alındı + author: blogContent[slug].author, // Yazar bilgisi blogContent'ten alındı + date: post.date, + readTime: post.readTime, + category: post.category, + }; +}); diff --git a/company/src/locales/team.ts b/company/src/locales/team.ts new file mode 100644 index 00000000..440b913a --- /dev/null +++ b/company/src/locales/team.ts @@ -0,0 +1,56 @@ +export const team = { + en: [ + { + name: "Özlem Öztürk", + title: "Founder", + imageUrl: "/img/women.png" + }, + { + name: "Sefa Öztürk", + title: "CTO", + imageUrl: "/img/men.png" + }, + { + name: "Ahmet Öztürk", + title: "Sales Director", + imageUrl: "/img/men.png" + }, + { + name: "Esra Öztürk", + title: "Project Director", + imageUrl: "/img/women.png" + }, + { + name: "Eva Öztürk", + title: "Tech Director", + imageUrl: "/img/women.png" + } + ], + tr: [ + { + name: "Özlem Öztürk", + title: "Kurucu", + imageUrl: "/img/women.png" + }, + { + name: "Sefa Öztürk", + title: "CTO", + imageUrl: "/img/men.png" + }, + { + name: "Ahmet Öztürk", + title: "Satış Direktörü", + imageUrl: "/img/men.png" + }, + { + name: "Esra Öztürk", + title: "Proje Direktörü", + imageUrl: "/img/women.png" + }, + { + name: "Eva Öztürk", + title: "Teknoloji Direktörü", + imageUrl: "/img/women.png" + } + ] +}; diff --git a/company/src/locales/testimonials.ts b/company/src/locales/testimonials.ts new file mode 100644 index 00000000..69c4994c --- /dev/null +++ b/company/src/locales/testimonials.ts @@ -0,0 +1,106 @@ +export const testimonials = { + en: [ + { + quote: "Outstanding service and results. Highly recommended!", + author: "John Doe", + title: "CEO, Example Corp" + }, + { + quote: "Exceeded our expectations in every way.", + author: "Jane Smith", + title: "Director, Tech Solutions" + }, + { + quote: "A game-changer for our business operations.", + author: "Mike Johnson", + title: "Founder, Innovation Labs" + }, + { + quote: "The team was incredibly responsive and helpful.", + author: "Emily White", + title: "Marketing Manager, Global Corp" + }, + { + quote: "We saw a significant increase in efficiency after implementing their solutions.", + author: "David Brown", + title: "Operations Manager, Tech Forward" + }, + { + quote: "Their expertise and dedication are unmatched.", + author: "Sarah Green", + title: "Head of Product, Innovatech" + }, + { + quote: "Incredible support and a fantastic product.", + author: "Kevin Black", + title: "Sales Director, LeadGen Inc." + }, + { + quote: "Transformed our business with their innovative approach.", + author: "Linda Gray", + title: "Business Owner, Creative Solutions" + }, + { + quote: "Exceptional service and a pleasure to work with.", + author: "Brian Blue", + title: "Project Lead, FutureTech" + }, + { + quote: "Highly professional and delivered on every promise.", + author: "Jessica Red", + title: "Customer Success Manager, Prime Corp" + } + ], + tr: [ + { + quote: "Üstün hizmet ve sonuçlar. Şiddetle tavsiye edilir!", + author: "John Doe", + title: "CEO, Example Corp" + }, + { + quote: "Beklentilerimizi her yönden aştılar.", + author: "Jane Smith", + title: "Direktör, Tech Solutions" + }, + { + quote: "İş operasyonlarımız için ezber bozan bir gelişme.", + author: "Mike Johnson", + title: "Kurucu, Innovation Labs" + }, + { + quote: "Ekip inanılmaz derecede duyarlı ve yardımseverdi.", + author: "Emily White", + title: "Pazarlama Müdürü, Global Corp" + }, + { + quote: "Çözümlerini uyguladıktan sonra verimlilikte önemli bir artış gördük.", + author: "David Brown", + title: "Operasyon Müdürü, Tech Forward" + }, + { + quote: "Uzmanlıkları ve özverileri eşsiz.", + author: "Sarah Green", + title: "Ürün Müdürü, Innovatech" + }, + { + quote: "İnanılmaz destek ve harika bir ürün.", + author: "Kevin Black", + title: "Satış Direktörü, LeadGen Inc." + }, + { + quote: "Yenilikçi yaklaşımlarıyla işimizi dönüştürdüler.", + author: "Linda Gray", + title: "İşletme Sahibi, Creative Solutions" + }, + { + quote: "Olağanüstü hizmet ve çalışması keyifli.", + author: "Brian Blue", + title: "Proje Lideri, FutureTech" + }, + { + quote: "Son derece profesyonel ve verdikleri her sözü tuttular.", + author: "Jessica Red", + title: "Müşteri Başarı Yöneticisi, Prime Corp" + } + ] +}; diff --git a/company/src/main.tsx b/company/src/main.tsx new file mode 100644 index 00000000..ea9e3630 --- /dev/null +++ b/company/src/main.tsx @@ -0,0 +1,10 @@ +import { StrictMode } from 'react'; +import { createRoot } from 'react-dom/client'; +import App from './App.tsx'; +import './index.css'; + +createRoot(document.getElementById('root')!).render( + + + +); diff --git a/company/src/pages/About.tsx b/company/src/pages/About.tsx new file mode 100644 index 00000000..613079b3 --- /dev/null +++ b/company/src/pages/About.tsx @@ -0,0 +1,111 @@ +import React from 'react'; +import { Users, Award, Clock, Globe2 } from 'lucide-react'; +import { useLanguage } from '../context/LanguageContext'; +import { team } from '../locales/team'; + +const About: React.FC = () => { + const { t, language } = useLanguage(); + + const teamData = team[language]; + + return ( +
    + {/* Hero Section */} +
    +
    +
    +

    {t('about.title')}

    +

    + {t('about.subtitle')} +

    +
    +
    + + {/* Stats Section */} +
    +
    +
    +
    + +
    300+
    +
    {t('about.stats.clients')}
    +
    +
    + +
    20+
    +
    {t('about.stats.experience')}
    +
    +
    + +
    7/24
    +
    {t('about.stats.support')}
    +
    +
    + +
    3
    +
    {t('about.stats.countries')}
    +
    +
    +
    +
    + + {/* Main Content */} +
    +
    +
    + +
    +

    + {t('about.description.part1')} +

    +

    + {t('about.description.motto')} +

    +

    + {t('about.description.part2')} +

    +

    + {t('about.description.closing')} +

    +
    +
    + +
    +
    +

    {t('about.mission')}

    +

    {t('about.mission.desc')}

    +
    +
    +

    {t('about.vision')}

    +

    {t('about.vision.desc')}

    +
    +
    +
    +
    + + {/* Team Section */} +
    +
    +

    + {t('about.team')} +

    +
    + {teamData.map((member, index) => ( +
    + {member.name} +

    {member.name}

    +

    {member.title}

    +
    + ))} +
    +
    +
    +
    + ); +}; + +export default About; diff --git a/company/src/pages/Blog.tsx b/company/src/pages/Blog.tsx new file mode 100644 index 00000000..fcf17651 --- /dev/null +++ b/company/src/pages/Blog.tsx @@ -0,0 +1,102 @@ +import React from 'react'; +import { Calendar, Clock, User } from 'lucide-react'; +import { useLanguage } from '../context/LanguageContext'; +import { Link } from 'react-router-dom'; +import { blogPostsList, BlogPostContent } from '../locales/blogContent'; // blogPostsList ve BlogPostContent interface'ini import et + +const Blog: React.FC = () => { + const { t } = useLanguage(); + + // Basit slug oluşturma fonksiyonu + const createSlug = (title: string) => { + return title + .toLowerCase() + .replace(/ /g, '-') + .replace(/[^\w-]+/g, ''); + }; + + return ( +
    + {/* Hero Section */} +
    +
    +
    +

    {t('blog.title')}

    +

    + {t('blog.subtitle')} +

    +
    +
    + + {/* Blog Posts Grid */} +
    +
    + {blogPostsList.map((post, index) => ( + +
    +
    + {t(post.title)} +
    + {t(post.category)} +
    +
    +
    +

    + {t(post.title)} +

    +

    + {t(post.excerpt)} +

    +
    +
    + + {post.author} {/* Yazar bilgisi doğrudan post objesinden alınıyor */} +
    +
    + + {t(post.date)} +
    +
    + + {post.readTime} +
    +
    +
    +
    + + ))} +
    +
    + + {/* Newsletter Section */} +
    +
    +

    {t('blog.subscribe')}

    +

    + {t('blog.subscribe.desc')} +

    +
    + + +
    +
    +
    +
    + ); +}; + +export default Blog; diff --git a/company/src/pages/BlogDetail.tsx b/company/src/pages/BlogDetail.tsx new file mode 100644 index 00000000..78d9fce4 --- /dev/null +++ b/company/src/pages/BlogDetail.tsx @@ -0,0 +1,70 @@ +import React from 'react'; +import { Link, useParams } from 'react-router-dom'; // Link ve useParams'ı import et +import { useLanguage } from '../context/LanguageContext'; // useLanguage hook'unu import et +import { blogContent, BlogPostContent } from '../locales/blogContent'; // blogContent ve BlogPostContent interface'ini import et + +const BlogDetail: React.FC = () => { + const { id } = useParams<{ id: string }>(); + const { t, language } = useLanguage(); // useLanguage hook'unu kullan ve dil bilgisini al + + // Basit slug oluşturma fonksiyonu (Blog.tsx'teki ile aynı olmalı) + const createSlug = (title: string) => { + return title + .toLowerCase() + .replace(/ /g, '-') + .replace(/[^\w-]+/g, ''); + }; + + // URL'deki slug'a göre blog yazısını bul + // blogContent objesinden slug'a karşılık gelen blog yazısını ve mevcut dile göre içeriğini al + const postData = blogContent[id || '']; // id undefined olabilir, boş string ile kontrol et + const blogPost = postData ? postData[language as 'tr' | 'en'] : undefined; // Mevcut dile göre içeriği al + + if (!blogPost) { + return ( +
    +

    {t('blog.notFound')}

    {/* Çeviri kullan */} +
    + ); + } + + return ( +
    {/* py-16 yerine pt-32 pb-16 kullanıldı */} +
    + + ← {t('blog.backToBlog')} {/* Geri dönüş butonu */} + + {/* Blog yazısı görseli */} + {postData.image && ( + {t(blogPost.title)} + )} +

    {t(blogPost.title)}

    {/* Çeviri kullan */} + {/* Yazar, tarih, okuma süresi gibi bilgiler eklenebilir */} +
    +
    + {/* */} {/* İkonlar eklenebilir */} + {postData.author} {/* Yazar bilgisi blogContent'ten alınıyor */} +
    +
    + {/* */} + {t(blogPost.date)} {/* Çeviri kullan */} +
    +
    + {/* */} + {blogPost.readTime} +
    +
    +
    {/* Tailwind Typography eklentisi kuruluysa kullanılabilir */} +

    {t(blogPost.content)}

    {/* Tam içeriği çevirerek göster */} + {/* Daha uzun içerik burada paragraflar halinde yer alabilir */} +
    +
    +
    + ); +}; + +export default BlogDetail; diff --git a/company/src/pages/Contact.tsx b/company/src/pages/Contact.tsx new file mode 100644 index 00000000..8307b08a --- /dev/null +++ b/company/src/pages/Contact.tsx @@ -0,0 +1,212 @@ +import React from "react"; +import { + Mail, + Phone, + MapPin, + Clock, + Globe, + FileText, + Building, + CalendarDays, + CalendarCheck, + MessageCircle, +} from "lucide-react"; +import { useLanguage } from "../context/LanguageContext"; + +const Contact: React.FC = () => { + const { t } = useLanguage(); + + return ( +
    + {/* Hero Section */} +
    +
    +
    +

    {t("contact.title")}

    +

    {t("contact.subtitle")}

    +
    +
    + +
    +
    +
    + {/* Contact Information */} +
    +
    +

    + {t("contact.info.title")} +

    +
    +
    + +
    +

    + {t("contact.address")} +

    +

    + {t("contact.address.full")} +

    +
    +
    +
    + +
    +

    + {t("contact.phone")} +

    +

    +90 (544) 769 7 638

    +
    +
    +
    + +
    +

    + {t("contact.email")} +

    +

    + + destek@sozsoft.com + +

    +

    + + kariyer@sozsoft.com + +

    +
    +
    +
    + +
    +

    + {t("contact.taxOffice")} +

    +

    Kozyatağı

    +
    +
    +
    + +
    +

    + {t("contact.taxNumber")} +

    +

    32374982750

    +
    +
    + +
    +
    +
    + + {/* Bank Information */} +
    +
    +

    + {t("contact.workHours")} +

    +
    +
    +
    +
    + +

    + {t("contact.workHours.weekday")} +

    +
    +
    + +

    + {t("contact.workHours.weekend")} +

    +
    +
    + +

    + {t("contact.workHours.whatsapp")} +

    +
    +
    +
    +
    +
    + +
    +

    + {t("contact.bank.title")} +

    +
    + Enpara Logo +
    +

    + Özlem Öztürk +

    +

    + 03663 / Enpara +
    + 73941177 +
    + TR65 0011 1000 0000 0073 9411 77 +

    +
    +
    +
    + +
    +
    +
    +
    + + {/* Map Section */} +
    +
    +

    + {t("contact.location")} +

    +
    + +
    +
    +
    +
    + ); +}; + +export default Contact; diff --git a/company/src/pages/Demo.tsx b/company/src/pages/Demo.tsx new file mode 100644 index 00000000..db18bfee --- /dev/null +++ b/company/src/pages/Demo.tsx @@ -0,0 +1,169 @@ +import React from "react"; +import { useLanguage } from "../context/LanguageContext"; + +const Demo: React.FC = () => { + const { t } = useLanguage(); + + return ( +
    +
    +
    +
    +

    {t("demo.form.title")}

    +

    {t("demo.subtitle")}

    +
    +
    + +
    +
    +
    +

    + {t("demo.form.title")} +

    +
    +
    +
    + + +
    +
    + + +
    +
    + +
    +
    + + +
    +
    + + +
    +
    + +
    + + +
    + +
    +
    + + +
    +
    + + +
    +
    + +
    + +