diff --git a/package-lock.json b/package-lock.json index 1611cd8..d45cf87 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6376 +1,6361 @@ { - "name": "hoanghapc", - "version": "0.1.0", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "hoanghapc", - "version": "0.1.0", - "dependencies": { - "@fancyapps/ui": "5.0", - "html-react-parser": "^5.2.14", - "next": "16.1.0", - "photoswipe": "^5.4.4", - "react": "19.2.3", - "react-dom": "19.2.3", - "sonner": "^2.0.7", - "swiper": "^12.0.3" - }, - "devDependencies": { - "@tailwindcss/postcss": "^4", - "@types/node": "^20", - "@types/react": "^19", - "@types/react-dom": "^19", - "autoprefixer": "^10.4.23", - "eslint": "^9", - "eslint-config-next": "16.1.0", - "postcss": "^8.5.6", - "tailwindcss": "^4.1.18", - "typescript": "^5" - } - }, - "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/@babel/code-frame": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.28.6.tgz", - "integrity": "sha512-JYgintcMjRiCvS8mMECzaEn+m3PfoQiyqukOMCCVQtoJGYJw8j/8LBJEiqkHLkfwCcs74E3pbAUFNg7d9VNJ+Q==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.28.5", - "js-tokens": "^4.0.0", - "picocolors": "^1.1.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.6.tgz", - "integrity": "sha512-2lfu57JtzctfIrcGMz992hyLlByuzgIk58+hhGCxjKZ3rWI82NnVLjXcaTqkI2NvlcvOskZaiZ5kjUALo3Lpxg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.6.tgz", - "integrity": "sha512-H3mcG6ZDLTlYfaSNi0iOKkigqMFvkTKlGUYlD8GW7nNOYRrevuA46iTypPyv+06V3fEmvvazfntkBU34L0azAw==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.28.6", - "@babel/generator": "^7.28.6", - "@babel/helper-compilation-targets": "^7.28.6", - "@babel/helper-module-transforms": "^7.28.6", - "@babel/helpers": "^7.28.6", - "@babel/parser": "^7.28.6", - "@babel/template": "^7.28.6", - "@babel/traverse": "^7.28.6", - "@babel/types": "^7.28.6", - "@jridgewell/remapping": "^2.3.5", - "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.28.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.6.tgz", - "integrity": "sha512-lOoVRwADj8hjf7al89tvQ2a1lf53Z+7tiXMgpZJL3maQPDxh0DgLMN62B2MKUOFcoodBHLMbDM6WAbKgNy5Suw==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.28.6", - "@babel/types": "^7.28.6", - "@jridgewell/gen-mapping": "^0.3.12", - "@jridgewell/trace-mapping": "^0.3.28", - "jsesc": "^3.0.2" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz", - "integrity": "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.28.6", - "@babel/helper-validator-option": "^7.27.1", - "browserslist": "^4.24.0", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-globals": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", - "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz", - "integrity": "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==", - "dev": true, - "dependencies": { - "@babel/traverse": "^7.28.6", - "@babel/types": "^7.28.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz", - "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==", - "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.28.6", - "@babel/helper-validator-identifier": "^7.28.5", - "@babel/traverse": "^7.28.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", - "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", - "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-option": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", - "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.6.tgz", - "integrity": "sha512-xOBvwq86HHdB7WUDTfKfT/Vuxh7gElQ+Sfti2Cy6yIWNW05P8iUslOVcZ4/sKbE+/jQaukQAdz/gf3724kYdqw==", - "dev": true, - "dependencies": { - "@babel/template": "^7.28.6", - "@babel/types": "^7.28.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.6.tgz", - "integrity": "sha512-TeR9zWR18BvbfPmGbLampPMW+uW1NZnJlRuuHso8i87QZNq2JRF9i6RgxRqtEq+wQGsS19NNTWr2duhnE49mfQ==", - "dev": true, - "dependencies": { - "@babel/types": "^7.28.6" - }, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/template": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz", - "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.28.6", - "@babel/parser": "^7.28.6", - "@babel/types": "^7.28.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.6.tgz", - "integrity": "sha512-fgWX62k02qtjqdSNTAGxmKYY/7FSL9WAS1o2Hu5+I5m9T0yxZzr4cnrfXQ/MX0rIifthCSs6FKTlzYbJcPtMNg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.28.6", - "@babel/generator": "^7.28.6", - "@babel/helper-globals": "^7.28.0", - "@babel/parser": "^7.28.6", - "@babel/template": "^7.28.6", - "@babel/types": "^7.28.6", - "debug": "^4.3.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/types": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.6.tgz", - "integrity": "sha512-0ZrskXVEHSWIqZM/sQZ4EV3jZJXRkio/WCxaqKZP1g//CEWEPSfeZFcms4XeKBCHU0ZKnIkdJeU/kF+eRp5lBg==", - "dev": true, - "dependencies": { - "@babel/helper-string-parser": "^7.27.1", - "@babel/helper-validator-identifier": "^7.28.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@emnapi/core": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.8.1.tgz", - "integrity": "sha512-AvT9QFpxK0Zd8J0jopedNm+w/2fIzvtPKPjqyw9jwvBaReTTqPBk9Hixaz7KbjimP+QNz605/XnjFcDAL2pqBg==", - "dev": true, - "optional": true, - "dependencies": { - "@emnapi/wasi-threads": "1.1.0", - "tslib": "^2.4.0" - } - }, - "node_modules/@emnapi/runtime": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.8.1.tgz", - "integrity": "sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg==", - "optional": true, - "dependencies": { - "tslib": "^2.4.0" - } - }, - "node_modules/@emnapi/wasi-threads": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz", - "integrity": "sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==", - "dev": true, - "optional": true, - "dependencies": { - "tslib": "^2.4.0" - } - }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz", - "integrity": "sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^3.4.3" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" - } - }, - "node_modules/@eslint-community/eslint-utils/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, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint-community/regexpp": { - "version": "4.12.2", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz", - "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==", - "dev": true, - "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" - } - }, - "node_modules/@eslint/config-array": { - "version": "0.21.1", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.1.tgz", - "integrity": "sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==", - "dev": true, - "dependencies": { - "@eslint/object-schema": "^2.1.7", - "debug": "^4.3.1", - "minimatch": "^3.1.2" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/config-helpers": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.2.tgz", - "integrity": "sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==", - "dev": true, - "dependencies": { - "@eslint/core": "^0.17.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/core": { - "version": "0.17.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.17.0.tgz", - "integrity": "sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.15" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.3.tgz", - "integrity": "sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ==", - "dev": true, - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^10.0.1", - "globals": "^14.0.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.1", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/js": { - "version": "9.39.2", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.2.tgz", - "integrity": "sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://eslint.org/donate" - } - }, - "node_modules/@eslint/object-schema": { - "version": "2.1.7", - "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.7.tgz", - "integrity": "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/plugin-kit": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz", - "integrity": "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==", - "dev": true, - "dependencies": { - "@eslint/core": "^0.17.0", - "levn": "^0.4.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@fancyapps/ui": { - "version": "5.0.36", - "resolved": "https://registry.npmjs.org/@fancyapps/ui/-/ui-5.0.36.tgz", - "integrity": "sha512-GMygQzp1MBTFNTT6AzpbL6pXTD6bTxwjmmpI1fe8Ozmmiseu8/g82Sudl1YhcbZmS4bJgaBOF5THDFGpXQ1fDw==" - }, - "node_modules/@humanfs/core": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", - "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", - "dev": true, - "engines": { - "node": ">=18.18.0" - } - }, - "node_modules/@humanfs/node": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.7.tgz", - "integrity": "sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==", - "dev": true, - "dependencies": { - "@humanfs/core": "^0.19.1", - "@humanwhocodes/retry": "^0.4.0" - }, - "engines": { - "node": ">=18.18.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/retry": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", - "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", - "dev": true, - "engines": { - "node": ">=18.18" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@img/colour": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@img/colour/-/colour-1.0.0.tgz", - "integrity": "sha512-A5P/LfWGFSl6nsckYtjw9da+19jB8hkJ6ACTGcDfEJ0aE+l2n2El7dsVM7UVHZQ9s2lmYMWlrS21YLy2IR1LUw==", - "optional": true, - "engines": { - "node": ">=18" - } - }, - "node_modules/@img/sharp-darwin-arm64": { - "version": "0.34.5", - "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.34.5.tgz", - "integrity": "sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-darwin-arm64": "1.2.4" - } - }, - "node_modules/@img/sharp-darwin-x64": { - "version": "0.34.5", - "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.34.5.tgz", - "integrity": "sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-darwin-x64": "1.2.4" - } - }, - "node_modules/@img/sharp-libvips-darwin-arm64": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.2.4.tgz", - "integrity": "sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "darwin" - ], - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-libvips-darwin-x64": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.2.4.tgz", - "integrity": "sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-libvips-linux-arm": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.2.4.tgz", - "integrity": "sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==", - "cpu": [ - "arm" - ], - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-libvips-linux-arm64": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.2.4.tgz", - "integrity": "sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-libvips-linux-ppc64": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.2.4.tgz", - "integrity": "sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==", - "cpu": [ - "ppc64" - ], - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-libvips-linux-riscv64": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-riscv64/-/sharp-libvips-linux-riscv64-1.2.4.tgz", - "integrity": "sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==", - "cpu": [ - "riscv64" - ], - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-libvips-linux-s390x": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.2.4.tgz", - "integrity": "sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==", - "cpu": [ - "s390x" - ], - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-libvips-linux-x64": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.2.4.tgz", - "integrity": "sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-libvips-linuxmusl-arm64": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.2.4.tgz", - "integrity": "sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-libvips-linuxmusl-x64": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.2.4.tgz", - "integrity": "sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-linux-arm": { - "version": "0.34.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.34.5.tgz", - "integrity": "sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==", - "cpu": [ - "arm" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-arm": "1.2.4" - } - }, - "node_modules/@img/sharp-linux-arm64": { - "version": "0.34.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.34.5.tgz", - "integrity": "sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-arm64": "1.2.4" - } - }, - "node_modules/@img/sharp-linux-ppc64": { - "version": "0.34.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.34.5.tgz", - "integrity": "sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==", - "cpu": [ - "ppc64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-ppc64": "1.2.4" - } - }, - "node_modules/@img/sharp-linux-riscv64": { - "version": "0.34.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-riscv64/-/sharp-linux-riscv64-0.34.5.tgz", - "integrity": "sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw==", - "cpu": [ - "riscv64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-riscv64": "1.2.4" - } - }, - "node_modules/@img/sharp-linux-s390x": { - "version": "0.34.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.34.5.tgz", - "integrity": "sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==", - "cpu": [ - "s390x" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-s390x": "1.2.4" - } - }, - "node_modules/@img/sharp-linux-x64": { - "version": "0.34.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.34.5.tgz", - "integrity": "sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-x64": "1.2.4" - } - }, - "node_modules/@img/sharp-linuxmusl-arm64": { - "version": "0.34.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.34.5.tgz", - "integrity": "sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linuxmusl-arm64": "1.2.4" - } - }, - "node_modules/@img/sharp-linuxmusl-x64": { - "version": "0.34.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.34.5.tgz", - "integrity": "sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linuxmusl-x64": "1.2.4" - } - }, - "node_modules/@img/sharp-wasm32": { - "version": "0.34.5", - "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.34.5.tgz", - "integrity": "sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==", - "cpu": [ - "wasm32" - ], - "optional": true, - "dependencies": { - "@emnapi/runtime": "^1.7.0" - }, - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-win32-arm64": { - "version": "0.34.5", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.34.5.tgz", - "integrity": "sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-win32-ia32": { - "version": "0.34.5", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.34.5.tgz", - "integrity": "sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg==", - "cpu": [ - "ia32" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-win32-x64": { - "version": "0.34.5", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.34.5.tgz", - "integrity": "sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.13", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", - "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", - "dev": true, - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.5.0", - "@jridgewell/trace-mapping": "^0.3.24" - } - }, - "node_modules/@jridgewell/remapping": { - "version": "2.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", - "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.24" - } - }, - "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/sourcemap-codec": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", - "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", - "dev": true - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.31", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", - "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@napi-rs/wasm-runtime": { - "version": "0.2.12", - "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.12.tgz", - "integrity": "sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==", - "dev": true, - "optional": true, - "dependencies": { - "@emnapi/core": "^1.4.3", - "@emnapi/runtime": "^1.4.3", - "@tybys/wasm-util": "^0.10.0" - } - }, - "node_modules/@next/env": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/@next/env/-/env-16.1.0.tgz", - "integrity": "sha512-Dd23XQeFHmhf3KBW76leYVkejHlCdB7erakC2At2apL1N08Bm+dLYNP+nNHh0tzUXfPQcNcXiQyacw0PG4Fcpw==" - }, - "node_modules/@next/eslint-plugin-next": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-16.1.0.tgz", - "integrity": "sha512-sooC/k0LCF4/jLXYHpgfzJot04lZQqsttn8XJpTguP8N3GhqXN3wSkh68no2OcZzS/qeGwKDFTqhZ8WofdXmmQ==", - "dev": true, - "dependencies": { - "fast-glob": "3.3.1" - } - }, - "node_modules/@next/swc-darwin-arm64": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-16.1.0.tgz", - "integrity": "sha512-onHq8dl8KjDb8taANQdzs3XmIqQWV3fYdslkGENuvVInFQzZnuBYYOG2HGHqqtvgmEU7xWzhgndXXxnhk4Z3fQ==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-darwin-x64": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-16.1.0.tgz", - "integrity": "sha512-Am6VJTp8KhLuAH13tPrAoVIXzuComlZlMwGr++o2KDjWiKPe3VwpxYhgV6I4gKls2EnsIMggL4y7GdXyDdJcFA==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-arm64-gnu": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-16.1.0.tgz", - "integrity": "sha512-fVicfaJT6QfghNyg8JErZ+EMNQ812IS0lmKfbmC01LF1nFBcKfcs4Q75Yy8IqnsCqH/hZwGhqzj3IGVfWV6vpA==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-arm64-musl": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-16.1.0.tgz", - "integrity": "sha512-TojQnDRoX7wJWXEEwdfuJtakMDW64Q7NrxQPviUnfYJvAx5/5wcGE+1vZzQ9F17m+SdpFeeXuOr6v3jbyusYMQ==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-x64-gnu": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-16.1.0.tgz", - "integrity": "sha512-quhNFVySW4QwXiZkZ34SbfzNBm27vLrxZ2HwTfFFO1BBP0OY1+pI0nbyewKeq1FriqU+LZrob/cm26lwsiAi8Q==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-x64-musl": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-16.1.0.tgz", - "integrity": "sha512-6JW0z2FZUK5iOVhUIWqE4RblAhUj1EwhZ/MwteGb//SpFTOHydnhbp3868gxalwea+mbOLWO6xgxj9wA9wNvNw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-arm64-msvc": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-16.1.0.tgz", - "integrity": "sha512-+DK/akkAvvXn5RdYN84IOmLkSy87SCmpofJPdB8vbLmf01BzntPBSYXnMvnEEv/Vcf3HYJwt24QZ/s6sWAwOMQ==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "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/@nolyfill/is-core-module": { - "version": "1.0.39", - "resolved": "https://registry.npmjs.org/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz", - "integrity": "sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==", - "dev": true, - "engines": { - "node": ">=12.4.0" - } - }, - "node_modules/@rtsao/scc": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", - "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", - "dev": true - }, - "node_modules/@swc/helpers": { - "version": "0.5.15", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.15.tgz", - "integrity": "sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==", - "dependencies": { - "tslib": "^2.8.0" - } - }, - "node_modules/@tailwindcss/node": { - "version": "4.1.18", - "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.1.18.tgz", - "integrity": "sha512-DoR7U1P7iYhw16qJ49fgXUlry1t4CpXeErJHnQ44JgTSKMaZUdf17cfn5mHchfJ4KRBZRFA/Coo+MUF5+gOaCQ==", - "dev": true, - "dependencies": { - "@jridgewell/remapping": "^2.3.4", - "enhanced-resolve": "^5.18.3", - "jiti": "^2.6.1", - "lightningcss": "1.30.2", - "magic-string": "^0.30.21", - "source-map-js": "^1.2.1", - "tailwindcss": "4.1.18" - } - }, - "node_modules/@tailwindcss/oxide": { - "version": "4.1.18", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.1.18.tgz", - "integrity": "sha512-EgCR5tTS5bUSKQgzeMClT6iCY3ToqE1y+ZB0AKldj809QXk1Y+3jB0upOYZrn9aGIzPtUsP7sX4QQ4XtjBB95A==", - "dev": true, - "engines": { - "node": ">= 10" - }, - "optionalDependencies": { - "@tailwindcss/oxide-android-arm64": "4.1.18", - "@tailwindcss/oxide-darwin-arm64": "4.1.18", - "@tailwindcss/oxide-darwin-x64": "4.1.18", - "@tailwindcss/oxide-freebsd-x64": "4.1.18", - "@tailwindcss/oxide-linux-arm-gnueabihf": "4.1.18", - "@tailwindcss/oxide-linux-arm64-gnu": "4.1.18", - "@tailwindcss/oxide-linux-arm64-musl": "4.1.18", - "@tailwindcss/oxide-linux-x64-gnu": "4.1.18", - "@tailwindcss/oxide-linux-x64-musl": "4.1.18", - "@tailwindcss/oxide-wasm32-wasi": "4.1.18", - "@tailwindcss/oxide-win32-arm64-msvc": "4.1.18", - "@tailwindcss/oxide-win32-x64-msvc": "4.1.18" - } - }, - "node_modules/@tailwindcss/oxide-android-arm64": { - "version": "4.1.18", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.1.18.tgz", - "integrity": "sha512-dJHz7+Ugr9U/diKJA0W6N/6/cjI+ZTAoxPf9Iz9BFRF2GzEX8IvXxFIi/dZBloVJX/MZGvRuFA9rqwdiIEZQ0Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@tailwindcss/oxide-darwin-arm64": { - "version": "4.1.18", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.1.18.tgz", - "integrity": "sha512-Gc2q4Qhs660bhjyBSKgq6BYvwDz4G+BuyJ5H1xfhmDR3D8HnHCmT/BSkvSL0vQLy/nkMLY20PQ2OoYMO15Jd0A==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@tailwindcss/oxide-darwin-x64": { - "version": "4.1.18", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.1.18.tgz", - "integrity": "sha512-FL5oxr2xQsFrc3X9o1fjHKBYBMD1QZNyc1Xzw/h5Qu4XnEBi3dZn96HcHm41c/euGV+GRiXFfh2hUCyKi/e+yw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@tailwindcss/oxide-freebsd-x64": { - "version": "4.1.18", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.1.18.tgz", - "integrity": "sha512-Fj+RHgu5bDodmV1dM9yAxlfJwkkWvLiRjbhuO2LEtwtlYlBgiAT4x/j5wQr1tC3SANAgD+0YcmWVrj8R9trVMA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": { - "version": "4.1.18", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.1.18.tgz", - "integrity": "sha512-Fp+Wzk/Ws4dZn+LV2Nqx3IilnhH51YZoRaYHQsVq3RQvEl+71VGKFpkfHrLM/Li+kt5c0DJe/bHXK1eHgDmdiA==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@tailwindcss/oxide-linux-arm64-gnu": { - "version": "4.1.18", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.1.18.tgz", - "integrity": "sha512-S0n3jboLysNbh55Vrt7pk9wgpyTTPD0fdQeh7wQfMqLPM/Hrxi+dVsLsPrycQjGKEQk85Kgbx+6+QnYNiHalnw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@tailwindcss/oxide-linux-arm64-musl": { - "version": "4.1.18", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.1.18.tgz", - "integrity": "sha512-1px92582HkPQlaaCkdRcio71p8bc8i/ap5807tPRDK/uw953cauQBT8c5tVGkOwrHMfc2Yh6UuxaH4vtTjGvHg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@tailwindcss/oxide-linux-x64-gnu": { - "version": "4.1.18", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.1.18.tgz", - "integrity": "sha512-v3gyT0ivkfBLoZGF9LyHmts0Isc8jHZyVcbzio6Wpzifg/+5ZJpDiRiUhDLkcr7f/r38SWNe7ucxmGW3j3Kb/g==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@tailwindcss/oxide-linux-x64-musl": { - "version": "4.1.18", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.1.18.tgz", - "integrity": "sha512-bhJ2y2OQNlcRwwgOAGMY0xTFStt4/wyU6pvI6LSuZpRgKQwxTec0/3Scu91O8ir7qCR3AuepQKLU/kX99FouqQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@tailwindcss/oxide-wasm32-wasi": { - "version": "4.1.18", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.1.18.tgz", - "integrity": "sha512-LffYTvPjODiP6PT16oNeUQJzNVyJl1cjIebq/rWWBF+3eDst5JGEFSc5cWxyRCJ0Mxl+KyIkqRxk1XPEs9x8TA==", - "bundleDependencies": [ - "@napi-rs/wasm-runtime", - "@emnapi/core", - "@emnapi/runtime", - "@tybys/wasm-util", - "@emnapi/wasi-threads", - "tslib" - ], - "cpu": [ - "wasm32" - ], - "dev": true, - "optional": true, - "dependencies": { - "@emnapi/core": "^1.7.1", - "@emnapi/runtime": "^1.7.1", - "@emnapi/wasi-threads": "^1.1.0", - "@napi-rs/wasm-runtime": "^1.1.0", - "@tybys/wasm-util": "^0.10.1", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@tailwindcss/oxide-win32-arm64-msvc": { - "version": "4.1.18", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.1.18.tgz", - "integrity": "sha512-HjSA7mr9HmC8fu6bdsZvZ+dhjyGCLdotjVOgLA2vEqxEBZaQo9YTX4kwgEvPCpRh8o4uWc4J/wEoFzhEmjvPbA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@tailwindcss/oxide/node_modules/@tailwindcss/oxide-win32-x64-msvc": { - "version": "4.1.18", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.1.18.tgz", - "integrity": "sha512-bJWbyYpUlqamC8dpR7pfjA0I7vdF6t5VpUGMWRkXVE3AXgIZjYUYAK7II1GNaxR8J1SSrSrppRar8G++JekE3Q==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@tailwindcss/postcss": { - "version": "4.1.18", - "resolved": "https://registry.npmjs.org/@tailwindcss/postcss/-/postcss-4.1.18.tgz", - "integrity": "sha512-Ce0GFnzAOuPyfV5SxjXGn0CubwGcuDB0zcdaPuCSzAa/2vII24JTkH+I6jcbXLb1ctjZMZZI6OjDaLPJQL1S0g==", - "dev": true, - "dependencies": { - "@alloc/quick-lru": "^5.2.0", - "@tailwindcss/node": "4.1.18", - "@tailwindcss/oxide": "4.1.18", - "postcss": "^8.4.41", - "tailwindcss": "4.1.18" - } - }, - "node_modules/@tybys/wasm-util": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", - "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", - "dev": true, - "optional": true, - "dependencies": { - "tslib": "^2.4.0" - } - }, - "node_modules/@types/estree": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", - "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", - "dev": true - }, - "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 - }, - "node_modules/@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", - "dev": true - }, - "node_modules/@types/node": { - "version": "20.19.28", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.28.tgz", - "integrity": "sha512-VyKBr25BuFDzBFCK5sUM6ZXiWfqgCTwTAOK8qzGV/m9FCirXYDlmczJ+d5dXBAQALGCdRRdbteKYfJ84NGEusw==", - "dev": true, - "dependencies": { - "undici-types": "~6.21.0" - } - }, - "node_modules/@types/react": { - "version": "19.2.8", - "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.8.tgz", - "integrity": "sha512-3MbSL37jEchWZz2p2mjntRZtPt837ij10ApxKfgmXCTuHWagYg7iA5bqPw6C8BMPfwidlvfPI/fxOc42HLhcyg==", - "devOptional": true, - "dependencies": { - "csstype": "^3.2.2" - } - }, - "node_modules/@types/react-dom": { - "version": "19.2.3", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.2.3.tgz", - "integrity": "sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==", - "dev": true, - "peerDependencies": { - "@types/react": "^19.2.0" - } - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.53.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.53.0.tgz", - "integrity": "sha512-eEXsVvLPu8Z4PkFibtuFJLJOTAV/nPdgtSjkGoPpddpFk3/ym2oy97jynY6ic2m6+nc5M8SE1e9v/mHKsulcJg==", - "dev": true, - "dependencies": { - "@eslint-community/regexpp": "^4.12.2", - "@typescript-eslint/scope-manager": "8.53.0", - "@typescript-eslint/type-utils": "8.53.0", - "@typescript-eslint/utils": "8.53.0", - "@typescript-eslint/visitor-keys": "8.53.0", - "ignore": "^7.0.5", - "natural-compare": "^1.4.0", - "ts-api-utils": "^2.4.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^8.53.0", - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", - "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/@typescript-eslint/parser": { - "version": "8.53.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.53.0.tgz", - "integrity": "sha512-npiaib8XzbjtzS2N4HlqPvlpxpmZ14FjSJrteZpPxGUaYPlvhzlzUZ4mZyABo0EFrOWnvyd0Xxroq//hKhtAWg==", - "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "8.53.0", - "@typescript-eslint/types": "8.53.0", - "@typescript-eslint/typescript-estree": "8.53.0", - "@typescript-eslint/visitor-keys": "8.53.0", - "debug": "^4.4.3" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/project-service": { - "version": "8.53.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.53.0.tgz", - "integrity": "sha512-Bl6Gdr7NqkqIP5yP9z1JU///Nmes4Eose6L1HwpuVHwScgDPPuEWbUVhvlZmb8hy0vX9syLk5EGNL700WcBlbg==", - "dev": true, - "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.53.0", - "@typescript-eslint/types": "^8.53.0", - "debug": "^4.4.3" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "8.53.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.53.0.tgz", - "integrity": "sha512-kWNj3l01eOGSdVBnfAF2K1BTh06WS0Yet6JUgb9Cmkqaz3Jlu0fdVUjj9UI8gPidBWSMqDIglmEXifSgDT/D0g==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "8.53.0", - "@typescript-eslint/visitor-keys": "8.53.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.53.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.53.0.tgz", - "integrity": "sha512-K6Sc0R5GIG6dNoPdOooQ+KtvT5KCKAvTcY8h2rIuul19vxH5OTQk7ArKkd4yTzkw66WnNY0kPPzzcmWA+XRmiA==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/type-utils": { - "version": "8.53.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.53.0.tgz", - "integrity": "sha512-BBAUhlx7g4SmcLhn8cnbxoxtmS7hcq39xKCgiutL3oNx1TaIp+cny51s8ewnKMpVUKQUGb41RAUWZ9kxYdovuw==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "8.53.0", - "@typescript-eslint/typescript-estree": "8.53.0", - "@typescript-eslint/utils": "8.53.0", - "debug": "^4.4.3", - "ts-api-utils": "^2.4.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/types": { - "version": "8.53.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.53.0.tgz", - "integrity": "sha512-Bmh9KX31Vlxa13+PqPvt4RzKRN1XORYSLlAE+sO1i28NkisGbTtSLFVB3l7PWdHtR3E0mVMuC7JilWJ99m2HxQ==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.53.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.53.0.tgz", - "integrity": "sha512-pw0c0Gdo7Z4xOG987u3nJ8akL9093yEEKv8QTJ+Bhkghj1xyj8cgPaavlr9rq8h7+s6plUJ4QJYw2gCZodqmGw==", - "dev": true, - "dependencies": { - "@typescript-eslint/project-service": "8.53.0", - "@typescript-eslint/tsconfig-utils": "8.53.0", - "@typescript-eslint/types": "8.53.0", - "@typescript-eslint/visitor-keys": "8.53.0", - "debug": "^4.4.3", - "minimatch": "^9.0.5", - "semver": "^7.7.3", - "tinyglobby": "^0.2.15", - "ts-api-utils": "^2.4.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", - "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.7.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", - "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/utils": { - "version": "8.53.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.53.0.tgz", - "integrity": "sha512-XDY4mXTez3Z1iRDI5mbRhH4DFSt46oaIFsLg+Zn97+sYrXACziXSQcSelMybnVZ5pa1P6xYkPr5cMJyunM1ZDA==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.9.1", - "@typescript-eslint/scope-manager": "8.53.0", - "@typescript-eslint/types": "8.53.0", - "@typescript-eslint/typescript-estree": "8.53.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.53.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.53.0.tgz", - "integrity": "sha512-LZ2NqIHFhvFwxG0qZeLL9DvdNAHPGCY5dIRwBhyYeU+LfLhcStE1ImjsuTG/WaVh3XysGaeLW8Rqq7cGkPCFvw==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "8.53.0", - "eslint-visitor-keys": "^4.2.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@unrs/resolver-binding-android-arm-eabi": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm-eabi/-/resolver-binding-android-arm-eabi-1.11.1.tgz", - "integrity": "sha512-ppLRUgHVaGRWUx0R0Ut06Mjo9gBaBkg3v/8AxusGLhsIotbBLuRk51rAzqLC8gq6NyyAojEXglNjzf6R948DNw==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@unrs/resolver-binding-android-arm64": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm64/-/resolver-binding-android-arm64-1.11.1.tgz", - "integrity": "sha512-lCxkVtb4wp1v+EoN+HjIG9cIIzPkX5OtM03pQYkG+U5O/wL53LC4QbIeazgiKqluGeVEeBlZahHalCaBvU1a2g==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@unrs/resolver-binding-darwin-arm64": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-arm64/-/resolver-binding-darwin-arm64-1.11.1.tgz", - "integrity": "sha512-gPVA1UjRu1Y/IsB/dQEsp2V1pm44Of6+LWvbLc9SDk1c2KhhDRDBUkQCYVWe6f26uJb3fOK8saWMgtX8IrMk3g==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@unrs/resolver-binding-darwin-x64": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-x64/-/resolver-binding-darwin-x64-1.11.1.tgz", - "integrity": "sha512-cFzP7rWKd3lZaCsDze07QX1SC24lO8mPty9vdP+YVa3MGdVgPmFc59317b2ioXtgCMKGiCLxJ4HQs62oz6GfRQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@unrs/resolver-binding-freebsd-x64": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-freebsd-x64/-/resolver-binding-freebsd-x64-1.11.1.tgz", - "integrity": "sha512-fqtGgak3zX4DCB6PFpsH5+Kmt/8CIi4Bry4rb1ho6Av2QHTREM+47y282Uqiu3ZRF5IQioJQ5qWRV6jduA+iGw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ] - }, - "node_modules/@unrs/resolver-binding-linux-arm-gnueabihf": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-gnueabihf/-/resolver-binding-linux-arm-gnueabihf-1.11.1.tgz", - "integrity": "sha512-u92mvlcYtp9MRKmP+ZvMmtPN34+/3lMHlyMj7wXJDeXxuM0Vgzz0+PPJNsro1m3IZPYChIkn944wW8TYgGKFHw==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@unrs/resolver-binding-linux-arm-musleabihf": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-musleabihf/-/resolver-binding-linux-arm-musleabihf-1.11.1.tgz", - "integrity": "sha512-cINaoY2z7LVCrfHkIcmvj7osTOtm6VVT16b5oQdS4beibX2SYBwgYLmqhBjA1t51CarSaBuX5YNsWLjsqfW5Cw==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@unrs/resolver-binding-linux-arm64-gnu": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-gnu/-/resolver-binding-linux-arm64-gnu-1.11.1.tgz", - "integrity": "sha512-34gw7PjDGB9JgePJEmhEqBhWvCiiWCuXsL9hYphDF7crW7UgI05gyBAi6MF58uGcMOiOqSJ2ybEeCvHcq0BCmQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@unrs/resolver-binding-linux-arm64-musl": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-musl/-/resolver-binding-linux-arm64-musl-1.11.1.tgz", - "integrity": "sha512-RyMIx6Uf53hhOtJDIamSbTskA99sPHS96wxVE/bJtePJJtpdKGXO1wY90oRdXuYOGOTuqjT8ACccMc4K6QmT3w==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@unrs/resolver-binding-linux-ppc64-gnu": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-ppc64-gnu/-/resolver-binding-linux-ppc64-gnu-1.11.1.tgz", - "integrity": "sha512-D8Vae74A4/a+mZH0FbOkFJL9DSK2R6TFPC9M+jCWYia/q2einCubX10pecpDiTmkJVUH+y8K3BZClycD8nCShA==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@unrs/resolver-binding-linux-riscv64-gnu": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-gnu/-/resolver-binding-linux-riscv64-gnu-1.11.1.tgz", - "integrity": "sha512-frxL4OrzOWVVsOc96+V3aqTIQl1O2TjgExV4EKgRY09AJ9leZpEg8Ak9phadbuX0BA4k8U5qtvMSQQGGmaJqcQ==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@unrs/resolver-binding-linux-riscv64-musl": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-musl/-/resolver-binding-linux-riscv64-musl-1.11.1.tgz", - "integrity": "sha512-mJ5vuDaIZ+l/acv01sHoXfpnyrNKOk/3aDoEdLO/Xtn9HuZlDD6jKxHlkN8ZhWyLJsRBxfv9GYM2utQ1SChKew==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@unrs/resolver-binding-linux-s390x-gnu": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-s390x-gnu/-/resolver-binding-linux-s390x-gnu-1.11.1.tgz", - "integrity": "sha512-kELo8ebBVtb9sA7rMe1Cph4QHreByhaZ2QEADd9NzIQsYNQpt9UkM9iqr2lhGr5afh885d/cB5QeTXSbZHTYPg==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@unrs/resolver-binding-linux-x64-gnu": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-gnu/-/resolver-binding-linux-x64-gnu-1.11.1.tgz", - "integrity": "sha512-C3ZAHugKgovV5YvAMsxhq0gtXuwESUKc5MhEtjBpLoHPLYM+iuwSj3lflFwK3DPm68660rZ7G8BMcwSro7hD5w==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@unrs/resolver-binding-linux-x64-musl": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-musl/-/resolver-binding-linux-x64-musl-1.11.1.tgz", - "integrity": "sha512-rV0YSoyhK2nZ4vEswT/QwqzqQXw5I6CjoaYMOX0TqBlWhojUf8P94mvI7nuJTeaCkkds3QE4+zS8Ko+GdXuZtA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@unrs/resolver-binding-wasm32-wasi": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-wasm32-wasi/-/resolver-binding-wasm32-wasi-1.11.1.tgz", - "integrity": "sha512-5u4RkfxJm+Ng7IWgkzi3qrFOvLvQYnPBmjmZQ8+szTK/b31fQCnleNl1GgEt7nIsZRIf5PLhPwT0WM+q45x/UQ==", - "cpu": [ - "wasm32" - ], - "dev": true, - "optional": true, - "dependencies": { - "@napi-rs/wasm-runtime": "^0.2.11" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@unrs/resolver-binding-win32-arm64-msvc": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-arm64-msvc/-/resolver-binding-win32-arm64-msvc-1.11.1.tgz", - "integrity": "sha512-nRcz5Il4ln0kMhfL8S3hLkxI85BXs3o8EYoattsJNdsX4YUU89iOkVn7g0VHSRxFuVMdM4Q1jEpIId1Ihim/Uw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@unrs/resolver-binding-win32-ia32-msvc": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-ia32-msvc/-/resolver-binding-win32-ia32-msvc-1.11.1.tgz", - "integrity": "sha512-DCEI6t5i1NmAZp6pFonpD5m7i6aFrpofcp4LA2i8IIq60Jyo28hamKBxNrZcyOwVOZkgsRp9O2sXWBWP8MnvIQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@unrs/resolver-binding-win32-x64-msvc": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-x64-msvc/-/resolver-binding-win32-x64-msvc-1.11.1.tgz", - "integrity": "sha512-lrW200hZdbfRtztbygyaq/6jP6AKE8qQN2KvPcJ+x7wiD038YtnYtZ82IMNJ69GJibV7bwL3y9FgK+5w/pYt6g==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/acorn": { - "version": "8.15.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", - "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", - "dev": true, - "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, - "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, - "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-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/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 - }, - "node_modules/aria-query": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz", - "integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", - "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.3", - "is-array-buffer": "^3.0.5" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-includes": { - "version": "3.1.9", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", - "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "define-properties": "^1.2.1", - "es-abstract": "^1.24.0", - "es-object-atoms": "^1.1.1", - "get-intrinsic": "^1.3.0", - "is-string": "^1.1.1", - "math-intrinsics": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.findlast": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", - "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.findlastindex": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz", - "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.9", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.1.1", - "es-shim-unscopables": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flat": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", - "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", - "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.tosorted": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", - "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.3", - "es-errors": "^1.3.0", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", - "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", - "dev": true, - "dependencies": { - "array-buffer-byte-length": "^1.0.1", - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6", - "is-array-buffer": "^3.0.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/ast-types-flow": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz", - "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==", - "dev": true - }, - "node_modules/async-function": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", - "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/autoprefixer": { - "version": "10.4.23", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.23.tgz", - "integrity": "sha512-YYTXSFulfwytnjAPlw8QHncHJmlvFKtczb8InXaAx9Q0LbfDnfEYDE55omerIJKihhmU61Ft+cAOSzQVaBUmeA==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" + "name": "hoanghapc", + "version": "0.1.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "hoanghapc", + "version": "0.1.0", + "dependencies": { + "@fancyapps/ui": "5.0", + "html-react-parser": "^5.2.14", + "next": "16.1.0", + "photoswipe": "^5.4.4", + "react": "19.2.3", + "react-dom": "19.2.3", + "sonner": "^2.0.7", + "swiper": "^12.0.3" + }, + "devDependencies": { + "@tailwindcss/postcss": "^4", + "@types/node": "^20", + "@types/react": "^19", + "@types/react-dom": "^19", + "autoprefixer": "^10.4.23", + "eslint": "^9", + "eslint-config-next": "16.1.0", + "postcss": "^8.5.6", + "tailwindcss": "^4.1.18", + "typescript": "^5" + } }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" + "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" + } }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" + "node_modules/@babel/code-frame": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.28.6.tgz", + "integrity": "sha512-JYgintcMjRiCvS8mMECzaEn+m3PfoQiyqukOMCCVQtoJGYJw8j/8LBJEiqkHLkfwCcs74E3pbAUFNg7d9VNJ+Q==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.28.5", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.6.tgz", + "integrity": "sha512-2lfu57JtzctfIrcGMz992hyLlByuzgIk58+hhGCxjKZ3rWI82NnVLjXcaTqkI2NvlcvOskZaiZ5kjUALo3Lpxg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.6.tgz", + "integrity": "sha512-H3mcG6ZDLTlYfaSNi0iOKkigqMFvkTKlGUYlD8GW7nNOYRrevuA46iTypPyv+06V3fEmvvazfntkBU34L0azAw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.28.6", + "@babel/generator": "^7.28.6", + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-module-transforms": "^7.28.6", + "@babel/helpers": "^7.28.6", + "@babel/parser": "^7.28.6", + "@babel/template": "^7.28.6", + "@babel/traverse": "^7.28.6", + "@babel/types": "^7.28.6", + "@jridgewell/remapping": "^2.3.5", + "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.28.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.6.tgz", + "integrity": "sha512-lOoVRwADj8hjf7al89tvQ2a1lf53Z+7tiXMgpZJL3maQPDxh0DgLMN62B2MKUOFcoodBHLMbDM6WAbKgNy5Suw==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.28.6", + "@babel/types": "^7.28.6", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz", + "integrity": "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.28.6", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz", + "integrity": "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.28.6", + "@babel/types": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz", + "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.28.6", + "@babel/helper-validator-identifier": "^7.28.5", + "@babel/traverse": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", + "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.6.tgz", + "integrity": "sha512-xOBvwq86HHdB7WUDTfKfT/Vuxh7gElQ+Sfti2Cy6yIWNW05P8iUslOVcZ4/sKbE+/jQaukQAdz/gf3724kYdqw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.28.6", + "@babel/types": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.6.tgz", + "integrity": "sha512-TeR9zWR18BvbfPmGbLampPMW+uW1NZnJlRuuHso8i87QZNq2JRF9i6RgxRqtEq+wQGsS19NNTWr2duhnE49mfQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.28.6" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/template": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz", + "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.28.6", + "@babel/parser": "^7.28.6", + "@babel/types": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.6.tgz", + "integrity": "sha512-fgWX62k02qtjqdSNTAGxmKYY/7FSL9WAS1o2Hu5+I5m9T0yxZzr4cnrfXQ/MX0rIifthCSs6FKTlzYbJcPtMNg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.28.6", + "@babel/generator": "^7.28.6", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.28.6", + "@babel/template": "^7.28.6", + "@babel/types": "^7.28.6", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.6.tgz", + "integrity": "sha512-0ZrskXVEHSWIqZM/sQZ4EV3jZJXRkio/WCxaqKZP1g//CEWEPSfeZFcms4XeKBCHU0ZKnIkdJeU/kF+eRp5lBg==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@emnapi/core": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.8.1.tgz", + "integrity": "sha512-AvT9QFpxK0Zd8J0jopedNm+w/2fIzvtPKPjqyw9jwvBaReTTqPBk9Hixaz7KbjimP+QNz605/XnjFcDAL2pqBg==", + "dev": true, + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.1.0", + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/runtime": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.8.1.tgz", + "integrity": "sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg==", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/wasi-threads": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz", + "integrity": "sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz", + "integrity": "sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/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, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.12.2", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz", + "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==", + "dev": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/config-array": { + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.1.tgz", + "integrity": "sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==", + "dev": true, + "dependencies": { + "@eslint/object-schema": "^2.1.7", + "debug": "^4.3.1", + "minimatch": "^3.1.2" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/config-helpers": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.2.tgz", + "integrity": "sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==", + "dev": true, + "dependencies": { + "@eslint/core": "^0.17.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/core": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.17.0.tgz", + "integrity": "sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.3.tgz", + "integrity": "sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.1", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/js": { + "version": "9.39.2", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.2.tgz", + "integrity": "sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + } + }, + "node_modules/@eslint/object-schema": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.7.tgz", + "integrity": "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz", + "integrity": "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==", + "dev": true, + "dependencies": { + "@eslint/core": "^0.17.0", + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@fancyapps/ui": { + "version": "5.0.36", + "resolved": "https://registry.npmjs.org/@fancyapps/ui/-/ui-5.0.36.tgz", + "integrity": "sha512-GMygQzp1MBTFNTT6AzpbL6pXTD6bTxwjmmpI1fe8Ozmmiseu8/g82Sudl1YhcbZmS4bJgaBOF5THDFGpXQ1fDw==" + }, + "node_modules/@humanfs/core": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", + "dev": true, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.7", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.7.tgz", + "integrity": "sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==", + "dev": true, + "dependencies": { + "@humanfs/core": "^0.19.1", + "@humanwhocodes/retry": "^0.4.0" + }, + "engines": { + "node": ">=18.18.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/retry": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", + "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", + "dev": true, + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@img/colour": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@img/colour/-/colour-1.0.0.tgz", + "integrity": "sha512-A5P/LfWGFSl6nsckYtjw9da+19jB8hkJ6ACTGcDfEJ0aE+l2n2El7dsVM7UVHZQ9s2lmYMWlrS21YLy2IR1LUw==", + "optional": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/@img/sharp-darwin-arm64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.34.5.tgz", + "integrity": "sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-arm64": "1.2.4" + } + }, + "node_modules/@img/sharp-darwin-x64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.34.5.tgz", + "integrity": "sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-x64": "1.2.4" + } + }, + "node_modules/@img/sharp-libvips-darwin-arm64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.2.4.tgz", + "integrity": "sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-darwin-x64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.2.4.tgz", + "integrity": "sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-arm": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.2.4.tgz", + "integrity": "sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-arm64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.2.4.tgz", + "integrity": "sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-ppc64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.2.4.tgz", + "integrity": "sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-riscv64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-riscv64/-/sharp-libvips-linux-riscv64-1.2.4.tgz", + "integrity": "sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-s390x": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.2.4.tgz", + "integrity": "sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-x64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.2.4.tgz", + "integrity": "sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linuxmusl-arm64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.2.4.tgz", + "integrity": "sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linuxmusl-x64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.2.4.tgz", + "integrity": "sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-linux-arm": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.34.5.tgz", + "integrity": "sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm": "1.2.4" + } + }, + "node_modules/@img/sharp-linux-arm64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.34.5.tgz", + "integrity": "sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm64": "1.2.4" + } + }, + "node_modules/@img/sharp-linux-ppc64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.34.5.tgz", + "integrity": "sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-ppc64": "1.2.4" + } + }, + "node_modules/@img/sharp-linux-riscv64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-riscv64/-/sharp-linux-riscv64-0.34.5.tgz", + "integrity": "sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-riscv64": "1.2.4" + } + }, + "node_modules/@img/sharp-linux-s390x": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.34.5.tgz", + "integrity": "sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-s390x": "1.2.4" + } + }, + "node_modules/@img/sharp-linux-x64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.34.5.tgz", + "integrity": "sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-x64": "1.2.4" + } + }, + "node_modules/@img/sharp-linuxmusl-arm64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.34.5.tgz", + "integrity": "sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-arm64": "1.2.4" + } + }, + "node_modules/@img/sharp-linuxmusl-x64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.34.5.tgz", + "integrity": "sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-x64": "1.2.4" + } + }, + "node_modules/@img/sharp-wasm32": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.34.5.tgz", + "integrity": "sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==", + "cpu": [ + "wasm32" + ], + "optional": true, + "dependencies": { + "@emnapi/runtime": "^1.7.0" + }, + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-arm64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.34.5.tgz", + "integrity": "sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-ia32": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.34.5.tgz", + "integrity": "sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-x64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.34.5.tgz", + "integrity": "sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "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/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@napi-rs/wasm-runtime": { + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.12.tgz", + "integrity": "sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==", + "dev": true, + "optional": true, + "dependencies": { + "@emnapi/core": "^1.4.3", + "@emnapi/runtime": "^1.4.3", + "@tybys/wasm-util": "^0.10.0" + } + }, + "node_modules/@next/env": { + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/@next/env/-/env-16.1.0.tgz", + "integrity": "sha512-Dd23XQeFHmhf3KBW76leYVkejHlCdB7erakC2At2apL1N08Bm+dLYNP+nNHh0tzUXfPQcNcXiQyacw0PG4Fcpw==" + }, + "node_modules/@next/eslint-plugin-next": { + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-16.1.0.tgz", + "integrity": "sha512-sooC/k0LCF4/jLXYHpgfzJot04lZQqsttn8XJpTguP8N3GhqXN3wSkh68no2OcZzS/qeGwKDFTqhZ8WofdXmmQ==", + "dev": true, + "dependencies": { + "fast-glob": "3.3.1" + } + }, + "node_modules/@next/swc-darwin-arm64": { + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-16.1.0.tgz", + "integrity": "sha512-onHq8dl8KjDb8taANQdzs3XmIqQWV3fYdslkGENuvVInFQzZnuBYYOG2HGHqqtvgmEU7xWzhgndXXxnhk4Z3fQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-darwin-x64": { + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-16.1.0.tgz", + "integrity": "sha512-Am6VJTp8KhLuAH13tPrAoVIXzuComlZlMwGr++o2KDjWiKPe3VwpxYhgV6I4gKls2EnsIMggL4y7GdXyDdJcFA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-gnu": { + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-16.1.0.tgz", + "integrity": "sha512-fVicfaJT6QfghNyg8JErZ+EMNQ812IS0lmKfbmC01LF1nFBcKfcs4Q75Yy8IqnsCqH/hZwGhqzj3IGVfWV6vpA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-musl": { + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-16.1.0.tgz", + "integrity": "sha512-TojQnDRoX7wJWXEEwdfuJtakMDW64Q7NrxQPviUnfYJvAx5/5wcGE+1vZzQ9F17m+SdpFeeXuOr6v3jbyusYMQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-gnu": { + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-16.1.0.tgz", + "integrity": "sha512-quhNFVySW4QwXiZkZ34SbfzNBm27vLrxZ2HwTfFFO1BBP0OY1+pI0nbyewKeq1FriqU+LZrob/cm26lwsiAi8Q==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-musl": { + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-16.1.0.tgz", + "integrity": "sha512-6JW0z2FZUK5iOVhUIWqE4RblAhUj1EwhZ/MwteGb//SpFTOHydnhbp3868gxalwea+mbOLWO6xgxj9wA9wNvNw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-arm64-msvc": { + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-16.1.0.tgz", + "integrity": "sha512-+DK/akkAvvXn5RdYN84IOmLkSy87SCmpofJPdB8vbLmf01BzntPBSYXnMvnEEv/Vcf3HYJwt24QZ/s6sWAwOMQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "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/@nolyfill/is-core-module": { + "version": "1.0.39", + "resolved": "https://registry.npmjs.org/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz", + "integrity": "sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==", + "dev": true, + "engines": { + "node": ">=12.4.0" + } + }, + "node_modules/@rtsao/scc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", + "dev": true + }, + "node_modules/@swc/helpers": { + "version": "0.5.15", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.15.tgz", + "integrity": "sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==", + "dependencies": { + "tslib": "^2.8.0" + } + }, + "node_modules/@tailwindcss/node": { + "version": "4.1.18", + "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.1.18.tgz", + "integrity": "sha512-DoR7U1P7iYhw16qJ49fgXUlry1t4CpXeErJHnQ44JgTSKMaZUdf17cfn5mHchfJ4KRBZRFA/Coo+MUF5+gOaCQ==", + "dev": true, + "dependencies": { + "@jridgewell/remapping": "^2.3.4", + "enhanced-resolve": "^5.18.3", + "jiti": "^2.6.1", + "lightningcss": "1.30.2", + "magic-string": "^0.30.21", + "source-map-js": "^1.2.1", + "tailwindcss": "4.1.18" + } + }, + "node_modules/@tailwindcss/oxide": { + "version": "4.1.18", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.1.18.tgz", + "integrity": "sha512-EgCR5tTS5bUSKQgzeMClT6iCY3ToqE1y+ZB0AKldj809QXk1Y+3jB0upOYZrn9aGIzPtUsP7sX4QQ4XtjBB95A==", + "dev": true, + "engines": { + "node": ">= 10" + }, + "optionalDependencies": { + "@tailwindcss/oxide-android-arm64": "4.1.18", + "@tailwindcss/oxide-darwin-arm64": "4.1.18", + "@tailwindcss/oxide-darwin-x64": "4.1.18", + "@tailwindcss/oxide-freebsd-x64": "4.1.18", + "@tailwindcss/oxide-linux-arm-gnueabihf": "4.1.18", + "@tailwindcss/oxide-linux-arm64-gnu": "4.1.18", + "@tailwindcss/oxide-linux-arm64-musl": "4.1.18", + "@tailwindcss/oxide-linux-x64-gnu": "4.1.18", + "@tailwindcss/oxide-linux-x64-musl": "4.1.18", + "@tailwindcss/oxide-wasm32-wasi": "4.1.18", + "@tailwindcss/oxide-win32-arm64-msvc": "4.1.18", + "@tailwindcss/oxide-win32-x64-msvc": "4.1.18" + } + }, + "node_modules/@tailwindcss/oxide-android-arm64": { + "version": "4.1.18", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.1.18.tgz", + "integrity": "sha512-dJHz7+Ugr9U/diKJA0W6N/6/cjI+ZTAoxPf9Iz9BFRF2GzEX8IvXxFIi/dZBloVJX/MZGvRuFA9rqwdiIEZQ0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-darwin-arm64": { + "version": "4.1.18", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.1.18.tgz", + "integrity": "sha512-Gc2q4Qhs660bhjyBSKgq6BYvwDz4G+BuyJ5H1xfhmDR3D8HnHCmT/BSkvSL0vQLy/nkMLY20PQ2OoYMO15Jd0A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-darwin-x64": { + "version": "4.1.18", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.1.18.tgz", + "integrity": "sha512-FL5oxr2xQsFrc3X9o1fjHKBYBMD1QZNyc1Xzw/h5Qu4XnEBi3dZn96HcHm41c/euGV+GRiXFfh2hUCyKi/e+yw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-freebsd-x64": { + "version": "4.1.18", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.1.18.tgz", + "integrity": "sha512-Fj+RHgu5bDodmV1dM9yAxlfJwkkWvLiRjbhuO2LEtwtlYlBgiAT4x/j5wQr1tC3SANAgD+0YcmWVrj8R9trVMA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": { + "version": "4.1.18", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.1.18.tgz", + "integrity": "sha512-Fp+Wzk/Ws4dZn+LV2Nqx3IilnhH51YZoRaYHQsVq3RQvEl+71VGKFpkfHrLM/Li+kt5c0DJe/bHXK1eHgDmdiA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm64-gnu": { + "version": "4.1.18", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.1.18.tgz", + "integrity": "sha512-S0n3jboLysNbh55Vrt7pk9wgpyTTPD0fdQeh7wQfMqLPM/Hrxi+dVsLsPrycQjGKEQk85Kgbx+6+QnYNiHalnw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm64-musl": { + "version": "4.1.18", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.1.18.tgz", + "integrity": "sha512-1px92582HkPQlaaCkdRcio71p8bc8i/ap5807tPRDK/uw953cauQBT8c5tVGkOwrHMfc2Yh6UuxaH4vtTjGvHg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-x64-gnu": { + "version": "4.1.18", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.1.18.tgz", + "integrity": "sha512-v3gyT0ivkfBLoZGF9LyHmts0Isc8jHZyVcbzio6Wpzifg/+5ZJpDiRiUhDLkcr7f/r38SWNe7ucxmGW3j3Kb/g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-x64-musl": { + "version": "4.1.18", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.1.18.tgz", + "integrity": "sha512-bhJ2y2OQNlcRwwgOAGMY0xTFStt4/wyU6pvI6LSuZpRgKQwxTec0/3Scu91O8ir7qCR3AuepQKLU/kX99FouqQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi": { + "version": "4.1.18", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.1.18.tgz", + "integrity": "sha512-LffYTvPjODiP6PT16oNeUQJzNVyJl1cjIebq/rWWBF+3eDst5JGEFSc5cWxyRCJ0Mxl+KyIkqRxk1XPEs9x8TA==", + "bundleDependencies": [ + "@napi-rs/wasm-runtime", + "@emnapi/core", + "@emnapi/runtime", + "@tybys/wasm-util", + "@emnapi/wasi-threads", + "tslib" + ], + "cpu": [ + "wasm32" + ], + "dev": true, + "optional": true, + "dependencies": { + "@emnapi/core": "^1.7.1", + "@emnapi/runtime": "^1.7.1", + "@emnapi/wasi-threads": "^1.1.0", + "@napi-rs/wasm-runtime": "^1.1.0", + "@tybys/wasm-util": "^0.10.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@tailwindcss/oxide-win32-arm64-msvc": { + "version": "4.1.18", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.1.18.tgz", + "integrity": "sha512-HjSA7mr9HmC8fu6bdsZvZ+dhjyGCLdotjVOgLA2vEqxEBZaQo9YTX4kwgEvPCpRh8o4uWc4J/wEoFzhEmjvPbA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide/node_modules/@tailwindcss/oxide-win32-x64-msvc": { + "version": "4.1.18", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.1.18.tgz", + "integrity": "sha512-bJWbyYpUlqamC8dpR7pfjA0I7vdF6t5VpUGMWRkXVE3AXgIZjYUYAK7II1GNaxR8J1SSrSrppRar8G++JekE3Q==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/postcss": { + "version": "4.1.18", + "resolved": "https://registry.npmjs.org/@tailwindcss/postcss/-/postcss-4.1.18.tgz", + "integrity": "sha512-Ce0GFnzAOuPyfV5SxjXGn0CubwGcuDB0zcdaPuCSzAa/2vII24JTkH+I6jcbXLb1ctjZMZZI6OjDaLPJQL1S0g==", + "dev": true, + "dependencies": { + "@alloc/quick-lru": "^5.2.0", + "@tailwindcss/node": "4.1.18", + "@tailwindcss/oxide": "4.1.18", + "postcss": "^8.4.41", + "tailwindcss": "4.1.18" + } + }, + "node_modules/@tybys/wasm-util": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", + "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "dev": true + }, + "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 + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true + }, + "node_modules/@types/node": { + "version": "20.19.28", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.28.tgz", + "integrity": "sha512-VyKBr25BuFDzBFCK5sUM6ZXiWfqgCTwTAOK8qzGV/m9FCirXYDlmczJ+d5dXBAQALGCdRRdbteKYfJ84NGEusw==", + "dev": true, + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/react": { + "version": "19.2.8", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.8.tgz", + "integrity": "sha512-3MbSL37jEchWZz2p2mjntRZtPt837ij10ApxKfgmXCTuHWagYg7iA5bqPw6C8BMPfwidlvfPI/fxOc42HLhcyg==", + "devOptional": true, + "dependencies": { + "csstype": "^3.2.2" + } + }, + "node_modules/@types/react-dom": { + "version": "19.2.3", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.2.3.tgz", + "integrity": "sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==", + "dev": true, + "peerDependencies": { + "@types/react": "^19.2.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.53.0.tgz", + "integrity": "sha512-eEXsVvLPu8Z4PkFibtuFJLJOTAV/nPdgtSjkGoPpddpFk3/ym2oy97jynY6ic2m6+nc5M8SE1e9v/mHKsulcJg==", + "dev": true, + "dependencies": { + "@eslint-community/regexpp": "^4.12.2", + "@typescript-eslint/scope-manager": "8.53.0", + "@typescript-eslint/type-utils": "8.53.0", + "@typescript-eslint/utils": "8.53.0", + "@typescript-eslint/visitor-keys": "8.53.0", + "ignore": "^7.0.5", + "natural-compare": "^1.4.0", + "ts-api-utils": "^2.4.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^8.53.0", + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", + "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.53.0.tgz", + "integrity": "sha512-npiaib8XzbjtzS2N4HlqPvlpxpmZ14FjSJrteZpPxGUaYPlvhzlzUZ4mZyABo0EFrOWnvyd0Xxroq//hKhtAWg==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "8.53.0", + "@typescript-eslint/types": "8.53.0", + "@typescript-eslint/typescript-estree": "8.53.0", + "@typescript-eslint/visitor-keys": "8.53.0", + "debug": "^4.4.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/project-service": { + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.53.0.tgz", + "integrity": "sha512-Bl6Gdr7NqkqIP5yP9z1JU///Nmes4Eose6L1HwpuVHwScgDPPuEWbUVhvlZmb8hy0vX9syLk5EGNL700WcBlbg==", + "dev": true, + "dependencies": { + "@typescript-eslint/tsconfig-utils": "^8.53.0", + "@typescript-eslint/types": "^8.53.0", + "debug": "^4.4.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.53.0.tgz", + "integrity": "sha512-kWNj3l01eOGSdVBnfAF2K1BTh06WS0Yet6JUgb9Cmkqaz3Jlu0fdVUjj9UI8gPidBWSMqDIglmEXifSgDT/D0g==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.53.0", + "@typescript-eslint/visitor-keys": "8.53.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/tsconfig-utils": { + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.53.0.tgz", + "integrity": "sha512-K6Sc0R5GIG6dNoPdOooQ+KtvT5KCKAvTcY8h2rIuul19vxH5OTQk7ArKkd4yTzkw66WnNY0kPPzzcmWA+XRmiA==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.53.0.tgz", + "integrity": "sha512-BBAUhlx7g4SmcLhn8cnbxoxtmS7hcq39xKCgiutL3oNx1TaIp+cny51s8ewnKMpVUKQUGb41RAUWZ9kxYdovuw==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.53.0", + "@typescript-eslint/typescript-estree": "8.53.0", + "@typescript-eslint/utils": "8.53.0", + "debug": "^4.4.3", + "ts-api-utils": "^2.4.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.53.0.tgz", + "integrity": "sha512-Bmh9KX31Vlxa13+PqPvt4RzKRN1XORYSLlAE+sO1i28NkisGbTtSLFVB3l7PWdHtR3E0mVMuC7JilWJ99m2HxQ==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.53.0.tgz", + "integrity": "sha512-pw0c0Gdo7Z4xOG987u3nJ8akL9093yEEKv8QTJ+Bhkghj1xyj8cgPaavlr9rq8h7+s6plUJ4QJYw2gCZodqmGw==", + "dev": true, + "dependencies": { + "@typescript-eslint/project-service": "8.53.0", + "@typescript-eslint/tsconfig-utils": "8.53.0", + "@typescript-eslint/types": "8.53.0", + "@typescript-eslint/visitor-keys": "8.53.0", + "debug": "^4.4.3", + "minimatch": "^9.0.5", + "semver": "^7.7.3", + "tinyglobby": "^0.2.15", + "ts-api-utils": "^2.4.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.53.0.tgz", + "integrity": "sha512-XDY4mXTez3Z1iRDI5mbRhH4DFSt46oaIFsLg+Zn97+sYrXACziXSQcSelMybnVZ5pa1P6xYkPr5cMJyunM1ZDA==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.9.1", + "@typescript-eslint/scope-manager": "8.53.0", + "@typescript-eslint/types": "8.53.0", + "@typescript-eslint/typescript-estree": "8.53.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.53.0.tgz", + "integrity": "sha512-LZ2NqIHFhvFwxG0qZeLL9DvdNAHPGCY5dIRwBhyYeU+LfLhcStE1ImjsuTG/WaVh3XysGaeLW8Rqq7cGkPCFvw==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.53.0", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@unrs/resolver-binding-android-arm-eabi": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm-eabi/-/resolver-binding-android-arm-eabi-1.11.1.tgz", + "integrity": "sha512-ppLRUgHVaGRWUx0R0Ut06Mjo9gBaBkg3v/8AxusGLhsIotbBLuRk51rAzqLC8gq6NyyAojEXglNjzf6R948DNw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@unrs/resolver-binding-android-arm64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm64/-/resolver-binding-android-arm64-1.11.1.tgz", + "integrity": "sha512-lCxkVtb4wp1v+EoN+HjIG9cIIzPkX5OtM03pQYkG+U5O/wL53LC4QbIeazgiKqluGeVEeBlZahHalCaBvU1a2g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@unrs/resolver-binding-darwin-arm64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-arm64/-/resolver-binding-darwin-arm64-1.11.1.tgz", + "integrity": "sha512-gPVA1UjRu1Y/IsB/dQEsp2V1pm44Of6+LWvbLc9SDk1c2KhhDRDBUkQCYVWe6f26uJb3fOK8saWMgtX8IrMk3g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@unrs/resolver-binding-darwin-x64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-x64/-/resolver-binding-darwin-x64-1.11.1.tgz", + "integrity": "sha512-cFzP7rWKd3lZaCsDze07QX1SC24lO8mPty9vdP+YVa3MGdVgPmFc59317b2ioXtgCMKGiCLxJ4HQs62oz6GfRQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@unrs/resolver-binding-freebsd-x64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-freebsd-x64/-/resolver-binding-freebsd-x64-1.11.1.tgz", + "integrity": "sha512-fqtGgak3zX4DCB6PFpsH5+Kmt/8CIi4Bry4rb1ho6Av2QHTREM+47y282Uqiu3ZRF5IQioJQ5qWRV6jduA+iGw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm-gnueabihf": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-gnueabihf/-/resolver-binding-linux-arm-gnueabihf-1.11.1.tgz", + "integrity": "sha512-u92mvlcYtp9MRKmP+ZvMmtPN34+/3lMHlyMj7wXJDeXxuM0Vgzz0+PPJNsro1m3IZPYChIkn944wW8TYgGKFHw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm-musleabihf": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-musleabihf/-/resolver-binding-linux-arm-musleabihf-1.11.1.tgz", + "integrity": "sha512-cINaoY2z7LVCrfHkIcmvj7osTOtm6VVT16b5oQdS4beibX2SYBwgYLmqhBjA1t51CarSaBuX5YNsWLjsqfW5Cw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-gnu/-/resolver-binding-linux-arm64-gnu-1.11.1.tgz", + "integrity": "sha512-34gw7PjDGB9JgePJEmhEqBhWvCiiWCuXsL9hYphDF7crW7UgI05gyBAi6MF58uGcMOiOqSJ2ybEeCvHcq0BCmQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-musl/-/resolver-binding-linux-arm64-musl-1.11.1.tgz", + "integrity": "sha512-RyMIx6Uf53hhOtJDIamSbTskA99sPHS96wxVE/bJtePJJtpdKGXO1wY90oRdXuYOGOTuqjT8ACccMc4K6QmT3w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-ppc64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-ppc64-gnu/-/resolver-binding-linux-ppc64-gnu-1.11.1.tgz", + "integrity": "sha512-D8Vae74A4/a+mZH0FbOkFJL9DSK2R6TFPC9M+jCWYia/q2einCubX10pecpDiTmkJVUH+y8K3BZClycD8nCShA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-riscv64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-gnu/-/resolver-binding-linux-riscv64-gnu-1.11.1.tgz", + "integrity": "sha512-frxL4OrzOWVVsOc96+V3aqTIQl1O2TjgExV4EKgRY09AJ9leZpEg8Ak9phadbuX0BA4k8U5qtvMSQQGGmaJqcQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-riscv64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-musl/-/resolver-binding-linux-riscv64-musl-1.11.1.tgz", + "integrity": "sha512-mJ5vuDaIZ+l/acv01sHoXfpnyrNKOk/3aDoEdLO/Xtn9HuZlDD6jKxHlkN8ZhWyLJsRBxfv9GYM2utQ1SChKew==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-s390x-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-s390x-gnu/-/resolver-binding-linux-s390x-gnu-1.11.1.tgz", + "integrity": "sha512-kELo8ebBVtb9sA7rMe1Cph4QHreByhaZ2QEADd9NzIQsYNQpt9UkM9iqr2lhGr5afh885d/cB5QeTXSbZHTYPg==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-x64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-gnu/-/resolver-binding-linux-x64-gnu-1.11.1.tgz", + "integrity": "sha512-C3ZAHugKgovV5YvAMsxhq0gtXuwESUKc5MhEtjBpLoHPLYM+iuwSj3lflFwK3DPm68660rZ7G8BMcwSro7hD5w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-x64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-musl/-/resolver-binding-linux-x64-musl-1.11.1.tgz", + "integrity": "sha512-rV0YSoyhK2nZ4vEswT/QwqzqQXw5I6CjoaYMOX0TqBlWhojUf8P94mvI7nuJTeaCkkds3QE4+zS8Ko+GdXuZtA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-wasm32-wasi": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-wasm32-wasi/-/resolver-binding-wasm32-wasi-1.11.1.tgz", + "integrity": "sha512-5u4RkfxJm+Ng7IWgkzi3qrFOvLvQYnPBmjmZQ8+szTK/b31fQCnleNl1GgEt7nIsZRIf5PLhPwT0WM+q45x/UQ==", + "cpu": [ + "wasm32" + ], + "dev": true, + "optional": true, + "dependencies": { + "@napi-rs/wasm-runtime": "^0.2.11" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@unrs/resolver-binding-win32-arm64-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-arm64-msvc/-/resolver-binding-win32-arm64-msvc-1.11.1.tgz", + "integrity": "sha512-nRcz5Il4ln0kMhfL8S3hLkxI85BXs3o8EYoattsJNdsX4YUU89iOkVn7g0VHSRxFuVMdM4Q1jEpIId1Ihim/Uw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@unrs/resolver-binding-win32-ia32-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-ia32-msvc/-/resolver-binding-win32-ia32-msvc-1.11.1.tgz", + "integrity": "sha512-DCEI6t5i1NmAZp6pFonpD5m7i6aFrpofcp4LA2i8IIq60Jyo28hamKBxNrZcyOwVOZkgsRp9O2sXWBWP8MnvIQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@unrs/resolver-binding-win32-x64-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-x64-msvc/-/resolver-binding-win32-x64-msvc-1.11.1.tgz", + "integrity": "sha512-lrW200hZdbfRtztbygyaq/6jP6AKE8qQN2KvPcJ+x7wiD038YtnYtZ82IMNJ69GJibV7bwL3y9FgK+5w/pYt6g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/acorn": { + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", + "dev": true, + "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, + "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, + "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-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/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 + }, + "node_modules/aria-query": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz", + "integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-includes": { + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", + "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.24.0", + "es-object-atoms": "^1.1.1", + "get-intrinsic": "^1.3.0", + "is-string": "^1.1.1", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.findlast": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", + "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz", + "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "es-shim-unscopables": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", + "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", + "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.tosorted": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", + "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3", + "es-errors": "^1.3.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", + "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ast-types-flow": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz", + "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==", + "dev": true + }, + "node_modules/async-function": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", + "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/autoprefixer": { + "version": "10.4.23", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.23.tgz", + "integrity": "sha512-YYTXSFulfwytnjAPlw8QHncHJmlvFKtczb8InXaAx9Q0LbfDnfEYDE55omerIJKihhmU61Ft+cAOSzQVaBUmeA==", + "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.28.1", + "caniuse-lite": "^1.0.30001760", + "fraction.js": "^5.3.4", + "picocolors": "^1.1.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dev": true, + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/axe-core": { + "version": "4.11.1", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.11.1.tgz", + "integrity": "sha512-BASOg+YwO2C+346x3LZOeoovTIoTrRqEsqMa6fmfAV0P+U9mFr9NsyOEpiYvFjbc64NMrSswhV50WdXzdb/Z5A==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/axobject-query": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", + "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "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==", + "dev": true + }, + "node_modules/baseline-browser-mapping": { + "version": "2.9.14", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.9.14.tgz", + "integrity": "sha512-B0xUquLkiGLgHhpPBqvl7GWegWBUNuujQ6kXd/r1U38ElPT6Ok8KZ8e+FpUGEc2ZoRQUzq/aUnaKFc/svWUGSg==", + "bin": { + "baseline-browser-mapping": "dist/cli.js" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "dev": true, + "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.28.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz", + "integrity": "sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==", + "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": { + "baseline-browser-mapping": "^2.9.0", + "caniuse-lite": "^1.0.30001759", + "electron-to-chromium": "^1.5.263", + "node-releases": "^2.0.27", + "update-browserslist-db": "^1.2.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/call-bind": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "dev": true, + "dependencies": { + "call-bind-apply-helpers": "^1.0.0", + "es-define-property": "^1.0.0", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "dev": true, + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001764", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001764.tgz", + "integrity": "sha512-9JGuzl2M+vPL+pz70gtMF9sHdMFbY9FJaQBi186cHKH3pSzDvzoUJUPV6fqiKIMyXbud9ZLg4F3Yza1vJ1+93g==", + "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" + } + ] + }, + "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/client-only": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", + "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" + }, + "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/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/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "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==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/csstype": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", + "devOptional": true + }, + "node_modules/damerau-levenshtein": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", + "dev": true + }, + "node_modules/data-view-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/inspect-js" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "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/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dev": true, + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/detect-libc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", + "devOptional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/dom-serializer/node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz", + "integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==", + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dev": true, + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.5.267", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.267.tgz", + "integrity": "sha512-0Drusm6MVRXSOJpGbaSVgcQsuB4hEkMpHXaVstcPmhu5LIedxs1xNK/nIxmQIU/RPC0+1/o0AVZfBTkTNJOdUw==", + "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==", + "dev": true + }, + "node_modules/enhanced-resolve": { + "version": "5.18.4", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.4.tgz", + "integrity": "sha512-LgQMM4WXU3QI+SYgEc2liRgznaD5ojbmY3sb8LxyguVkIg5FxdpTkvk72te2R38/TGKxH634oLxXRGY6d7AP+Q==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/entities": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-7.0.1.tgz", + "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/es-abstract": { + "version": "1.24.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.1.tgz", + "integrity": "sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.2", + "arraybuffer.prototype.slice": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "data-view-buffer": "^1.0.2", + "data-view-byte-length": "^1.0.2", + "data-view-byte-offset": "^1.0.1", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "es-set-tostringtag": "^2.1.0", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.8", + "get-intrinsic": "^1.3.0", + "get-proto": "^1.0.1", + "get-symbol-description": "^1.1.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "internal-slot": "^1.1.0", + "is-array-buffer": "^3.0.5", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.2", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.2.1", + "is-set": "^2.0.3", + "is-shared-array-buffer": "^1.0.4", + "is-string": "^1.1.1", + "is-typed-array": "^1.1.15", + "is-weakref": "^1.1.1", + "math-intrinsics": "^1.1.0", + "object-inspect": "^1.13.4", + "object-keys": "^1.1.1", + "object.assign": "^4.1.7", + "own-keys": "^1.0.1", + "regexp.prototype.flags": "^1.5.4", + "safe-array-concat": "^1.1.3", + "safe-push-apply": "^1.0.0", + "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", + "stop-iteration-iterator": "^1.1.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.3", + "typed-array-byte-length": "^1.0.3", + "typed-array-byte-offset": "^1.0.4", + "typed-array-length": "^1.0.7", + "unbox-primitive": "^1.1.0", + "which-typed-array": "^1.1.19" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-iterator-helpers": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.2.tgz", + "integrity": "sha512-BrUQ0cPTB/IwXj23HtwHjS9n7O4h9FX94b4xc5zlTHxeLgTAdzYUDyy6KdExAl9lbN5rtfe44xpjpmj9grxs5w==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.24.1", + "es-errors": "^1.3.0", + "es-set-tostringtag": "^2.1.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.3.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "iterator.prototype": "^1.1.5", + "safe-array-concat": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-shim-unscopables": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", + "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", + "dev": true, + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-to-primitive": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", + "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", + "dev": true, + "dependencies": { + "is-callable": "^1.2.7", + "is-date-object": "^1.0.5", + "is-symbol": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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": "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": { + "version": "9.39.2", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.2.tgz", + "integrity": "sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.8.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.21.1", + "@eslint/config-helpers": "^0.4.2", + "@eslint/core": "^0.17.0", + "@eslint/eslintrc": "^3.3.1", + "@eslint/js": "9.39.2", + "@eslint/plugin-kit": "^0.4.1", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.2", + "@types/estree": "^1.0.6", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.4.0", + "eslint-visitor-keys": "^4.2.1", + "espree": "^10.4.0", + "esquery": "^1.5.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } + } + }, + "node_modules/eslint-config-next": { + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-16.1.0.tgz", + "integrity": "sha512-RlPb8E2uO/Ix/w3kizxz6+6ogw99WqtNzTG0ArRZ5NEkIYcsfRb8U0j7aTG7NjRvcrsak5QtUSuxGNN2UcA58g==", + "dev": true, + "dependencies": { + "@next/eslint-plugin-next": "16.1.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-import-resolver-typescript": "^3.5.2", + "eslint-plugin-import": "^2.32.0", + "eslint-plugin-jsx-a11y": "^6.10.0", + "eslint-plugin-react": "^7.37.0", + "eslint-plugin-react-hooks": "^7.0.0", + "globals": "16.4.0", + "typescript-eslint": "^8.46.0" + }, + "peerDependencies": { + "eslint": ">=9.0.0", + "typescript": ">=3.3.1" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/eslint-config-next/node_modules/globals": { + "version": "16.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-16.4.0.tgz", + "integrity": "sha512-ob/2LcVVaVGCYN+r14cnwnoDPUufjiYgSqRhiFD0Q1iI4Odora5RE8Iv1D24hAz5oMophRGkGz+yuvQmmUMnMw==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "dev": true, + "dependencies": { + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-import-resolver-typescript": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.10.1.tgz", + "integrity": "sha512-A1rHYb06zjMGAxdLSkN2fXPBwuSaQ0iO5M/hdyS0Ajj1VBaRp0sPD3dn1FhME3c/JluGFbwSxyCfqdSbtQLAHQ==", + "dev": true, + "dependencies": { + "@nolyfill/is-core-module": "1.0.39", + "debug": "^4.4.0", + "get-tsconfig": "^4.10.0", + "is-bun-module": "^2.0.0", + "stable-hash": "^0.0.5", + "tinyglobby": "^0.2.13", + "unrs-resolver": "^1.6.2" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint-import-resolver-typescript" + }, + "peerDependencies": { + "eslint": "*", + "eslint-plugin-import": "*", + "eslint-plugin-import-x": "*" + }, + "peerDependenciesMeta": { + "eslint-plugin-import": { + "optional": true + }, + "eslint-plugin-import-x": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils": { + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.1.tgz", + "integrity": "sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==", + "dev": true, + "dependencies": { + "debug": "^3.2.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import": { + "version": "2.32.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.32.0.tgz", + "integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==", + "dev": true, + "dependencies": { + "@rtsao/scc": "^1.1.0", + "array-includes": "^3.1.9", + "array.prototype.findlastindex": "^1.2.6", + "array.prototype.flat": "^1.3.3", + "array.prototype.flatmap": "^1.3.3", + "debug": "^3.2.7", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.9", + "eslint-module-utils": "^2.12.1", + "hasown": "^2.0.2", + "is-core-module": "^2.16.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.8", + "object.groupby": "^1.0.3", + "object.values": "^1.2.1", + "semver": "^6.3.1", + "string.prototype.trimend": "^1.0.9", + "tsconfig-paths": "^3.15.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-jsx-a11y": { + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.2.tgz", + "integrity": "sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==", + "dev": true, + "dependencies": { + "aria-query": "^5.3.2", + "array-includes": "^3.1.8", + "array.prototype.flatmap": "^1.3.2", + "ast-types-flow": "^0.0.8", + "axe-core": "^4.10.0", + "axobject-query": "^4.1.0", + "damerau-levenshtein": "^1.0.8", + "emoji-regex": "^9.2.2", + "hasown": "^2.0.2", + "jsx-ast-utils": "^3.3.5", + "language-tags": "^1.0.9", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.8", + "safe-regex-test": "^1.0.3", + "string.prototype.includes": "^2.0.1" + }, + "engines": { + "node": ">=4.0" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9" + } + }, + "node_modules/eslint-plugin-react": { + "version": "7.37.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.5.tgz", + "integrity": "sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.8", + "array.prototype.findlast": "^1.2.5", + "array.prototype.flatmap": "^1.3.3", + "array.prototype.tosorted": "^1.1.4", + "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.2.1", + "estraverse": "^5.3.0", + "hasown": "^2.0.2", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.9", + "object.fromentries": "^2.0.8", + "object.values": "^1.2.1", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.5", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.12", + "string.prototype.repeat": "^1.0.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-7.0.1.tgz", + "integrity": "sha512-O0d0m04evaNzEPoSW+59Mezf8Qt0InfgGIBJnpC0h3NH/WjUAR7BIKUfysC6todmtiZ/A0oUVS8Gce0WhBrHsA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.24.4", + "@babel/parser": "^7.24.4", + "hermes-parser": "^0.25.1", + "zod": "^3.25.0 || ^4.0.0", + "zod-validation-error": "^3.5.0 || ^4.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" + } + }, + "node_modules/eslint-plugin-react/node_modules/resolve": { + "version": "2.0.0-next.5", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", + "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", + "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/eslint-scope": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", + "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", + "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", + "dev": true, + "dependencies": { + "acorn": "^8.15.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.7.0.tgz", + "integrity": "sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==", + "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, + "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, + "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 + }, + "node_modules/fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "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 + }, + "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.20.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.20.1.tgz", + "integrity": "sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", + "dev": true, + "dependencies": { + "flat-cache": "^4.0.0" + }, + "engines": { + "node": ">=16.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": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" + }, + "engines": { + "node": ">=16" + } + }, + "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 + }, + "node_modules/for-each": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", + "dev": true, + "dependencies": { + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/fraction.js": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-5.3.4.tgz", + "integrity": "sha512-1X1NTtiJphryn/uLQz3whtY6jK3fTqoE3ohKs0tT+Ujr1W59oopxmoEh7Lu5p6vBaPbgoM0bzveAW4Qi5RyWDQ==", + "dev": true, + "engines": { + "node": "*" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/rawify" + } + }, + "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/function.prototype.name": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", + "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "functions-have-names": "^1.2.3", + "hasown": "^2.0.2", + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/generator-function": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/generator-function/-/generator-function-2.0.1.tgz", + "integrity": "sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "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/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "dev": true, + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dev": true, + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-symbol-description": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-tsconfig": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.13.0.tgz", + "integrity": "sha512-1VKTZJCwBrvbd+Wn3AOgQP/2Av+TfTCOlE4AcRJE72W1ksZXbAx8PPBR9RzgTeSPzlPMHrbANMH3LbltH73wxQ==", + "dev": true, + "dependencies": { + "resolve-pkg-maps": "^1.0.0" + }, + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + } + }, + "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/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dev": true, + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/has-bigints": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "dev": true, + "dependencies": { + "dunder-proto": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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/hermes-estree": { + "version": "0.25.1", + "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.25.1.tgz", + "integrity": "sha512-0wUoCcLp+5Ev5pDW2OriHC2MJCbwLwuRx+gAqMTOkGKJJiBCLjtrvy4PWUGn6MIVefecRpzoOZ/UV6iGdOr+Cw==", + "dev": true + }, + "node_modules/hermes-parser": { + "version": "0.25.1", + "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.25.1.tgz", + "integrity": "sha512-6pEjquH3rqaI6cYAXYPcz9MS4rY6R4ngRgrgfDshRptUZIc3lw0MCIJIGDj9++mfySOuPTHB4nrSW99BCvOPIA==", + "dev": true, + "dependencies": { + "hermes-estree": "0.25.1" + } + }, + "node_modules/html-dom-parser": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/html-dom-parser/-/html-dom-parser-5.1.4.tgz", + "integrity": "sha512-UGjp7y8jSrDU2RdN2J9FDOo3X+WBu+LkS/I3TjjFW020ocZWjPvave+RKk1zeuY2sUWy5fh6zHgXHthzDGlFNQ==", + "dependencies": { + "domhandler": "5.0.3", + "htmlparser2": "10.1.0" + } + }, + "node_modules/html-react-parser": { + "version": "5.2.14", + "resolved": "https://registry.npmjs.org/html-react-parser/-/html-react-parser-5.2.14.tgz", + "integrity": "sha512-yiSZHuJq6LwQc450IhpLApug8bKTpHv5oVsClpVS1jEDepifXYcJu0Sw0r7pqEl89q/ZpO0nth6LEDWtz5n6qg==", + "dependencies": { + "domhandler": "5.0.3", + "html-dom-parser": "5.1.4", + "react-property": "2.0.2", + "style-to-js": "1.1.21" + }, + "peerDependencies": { + "@types/react": "0.14 || 15 || 16 || 17 || 18 || 19", + "react": "0.14 || 15 || 16 || 17 || 18 || 19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/htmlparser2": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-10.1.0.tgz", + "integrity": "sha512-VTZkM9GWRAtEpveh7MSF6SjjrpNVNNVJfFup7xTY3UpFtm67foy9HDVXneLtFVt4pMz5kZtgNcvCniNFb1hlEQ==", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.2.2", + "entities": "^7.0.1" + } + }, + "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, + "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/inline-style-parser": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.7.tgz", + "integrity": "sha512-Nb2ctOyNR8DqQoR0OwRG95uNWIC0C1lCgf5Naz5H6Ji72KZ8OcFZLz2P5sNgwlyoJ8Yif11oMuYs5pBQa86csA==" + }, + "node_modules/internal-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.2", + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-async-function": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", + "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", + "dev": true, + "dependencies": { + "async-function": "^1.0.0", + "call-bound": "^1.0.3", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bigint": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", + "dev": true, + "dependencies": { + "has-bigints": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-boolean-object": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", + "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bun-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-bun-module/-/is-bun-module-2.0.0.tgz", + "integrity": "sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ==", + "dev": true, + "dependencies": { + "semver": "^7.7.1" + } + }, + "node_modules/is-bun-module/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dev": true, + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-view": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", + "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "has-tostringtag": "^1.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-finalizationregistry": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", + "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-generator-function": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.2.tgz", + "integrity": "sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.4", + "generator-function": "^2.0.0", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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-number-object": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-regex": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", + "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", + "dev": true, + "dependencies": { + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", + "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/iterator.prototype": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.5.tgz", + "integrity": "sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.6", + "get-proto": "^1.0.0", + "has-symbols": "^1.1.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/jiti": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.6.1.tgz", + "integrity": "sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==", + "dev": true, + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "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==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", + "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "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 + }, + "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 + }, + "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/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/jsx-ast-utils": { + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", + "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.6", + "array.prototype.flat": "^1.3.1", + "object.assign": "^4.1.4", + "object.values": "^1.1.6" + }, + "engines": { + "node": ">=4.0" + } + }, + "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, + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/language-subtag-registry": { + "version": "0.3.23", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.23.tgz", + "integrity": "sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==", + "dev": true + }, + "node_modules/language-tags": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz", + "integrity": "sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==", + "dev": true, + "dependencies": { + "language-subtag-registry": "^0.3.20" + }, + "engines": { + "node": ">=0.10" + } + }, + "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/lightningcss": { + "version": "1.30.2", + "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.30.2.tgz", + "integrity": "sha512-utfs7Pr5uJyyvDETitgsaqSyjCb2qNRAtuqUeWIAKztsOYdcACf2KtARYXg2pSvhkt+9NfoaNY7fxjl6nuMjIQ==", + "dev": true, + "dependencies": { + "detect-libc": "^2.0.3" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "lightningcss-android-arm64": "1.30.2", + "lightningcss-darwin-arm64": "1.30.2", + "lightningcss-darwin-x64": "1.30.2", + "lightningcss-freebsd-x64": "1.30.2", + "lightningcss-linux-arm-gnueabihf": "1.30.2", + "lightningcss-linux-arm64-gnu": "1.30.2", + "lightningcss-linux-arm64-musl": "1.30.2", + "lightningcss-linux-x64-gnu": "1.30.2", + "lightningcss-linux-x64-musl": "1.30.2", + "lightningcss-win32-arm64-msvc": "1.30.2", + "lightningcss-win32-x64-msvc": "1.30.2" + } + }, + "node_modules/lightningcss-android-arm64": { + "version": "1.30.2", + "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.30.2.tgz", + "integrity": "sha512-BH9sEdOCahSgmkVhBLeU7Hc9DWeZ1Eb6wNS6Da8igvUwAe0sqROHddIlvU06q3WyXVEOYDZ6ykBZQnjTbmo4+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-arm64": { + "version": "1.30.2", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.30.2.tgz", + "integrity": "sha512-ylTcDJBN3Hp21TdhRT5zBOIi73P6/W0qwvlFEk22fkdXchtNTOU4Qc37SkzV+EKYxLouZ6M4LG9NfZ1qkhhBWA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-x64": { + "version": "1.30.2", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.30.2.tgz", + "integrity": "sha512-oBZgKchomuDYxr7ilwLcyms6BCyLn0z8J0+ZZmfpjwg9fRVZIR5/GMXd7r9RH94iDhld3UmSjBM6nXWM2TfZTQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-freebsd-x64": { + "version": "1.30.2", + "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.30.2.tgz", + "integrity": "sha512-c2bH6xTrf4BDpK8MoGG4Bd6zAMZDAXS569UxCAGcA7IKbHNMlhGQ89eRmvpIUGfKWNVdbhSbkQaWhEoMGmGslA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm-gnueabihf": { + "version": "1.30.2", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.30.2.tgz", + "integrity": "sha512-eVdpxh4wYcm0PofJIZVuYuLiqBIakQ9uFZmipf6LF/HRj5Bgm0eb3qL/mr1smyXIS1twwOxNWndd8z0E374hiA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-gnu": { + "version": "1.30.2", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.30.2.tgz", + "integrity": "sha512-UK65WJAbwIJbiBFXpxrbTNArtfuznvxAJw4Q2ZGlU8kPeDIWEX1dg3rn2veBVUylA2Ezg89ktszWbaQnxD/e3A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-musl": { + "version": "1.30.2", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.30.2.tgz", + "integrity": "sha512-5Vh9dGeblpTxWHpOx8iauV02popZDsCYMPIgiuw97OJ5uaDsL86cnqSFs5LZkG3ghHoX5isLgWzMs+eD1YzrnA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-gnu": { + "version": "1.30.2", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.30.2.tgz", + "integrity": "sha512-Cfd46gdmj1vQ+lR6VRTTadNHu6ALuw2pKR9lYq4FnhvgBc4zWY1EtZcAc6EffShbb1MFrIPfLDXD6Xprbnni4w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-musl": { + "version": "1.30.2", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.30.2.tgz", + "integrity": "sha512-XJaLUUFXb6/QG2lGIW6aIk6jKdtjtcffUT0NKvIqhSBY3hh9Ch+1LCeH80dR9q9LBjG3ewbDjnumefsLsP6aiA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-arm64-msvc": { + "version": "1.30.2", + "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.30.2.tgz", + "integrity": "sha512-FZn+vaj7zLv//D/192WFFVA0RgHawIcHqLX9xuWiQt7P0PtdFEVaxgF9rjM/IRYHQXNnk61/H/gb2Ei+kUQ4xQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss/node_modules/lightningcss-win32-x64-msvc": { + "version": "1.30.2", + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.30.2.tgz", + "integrity": "sha512-5g1yc73p+iAkid5phb4oVFMB45417DkRevRbt/El/gKXJk4jid+vPFF/AXbxn05Aky8PapwzZrdJShv5C0avjw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "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.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==", + "dev": true, + "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/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "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, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "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/napi-postinstall": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.3.4.tgz", + "integrity": "sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==", + "dev": true, + "bin": { + "napi-postinstall": "lib/cli.js" + }, + "engines": { + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/napi-postinstall" + } + }, + "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/next": { + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/next/-/next-16.1.0.tgz", + "integrity": "sha512-Y+KbmDbefYtHDDQKLNrmzE/YYzG2msqo2VXhzh5yrJ54tx/6TmGdkR5+kP9ma7i7LwZpZMfoY3m/AoPPPKxtVw==", + "dependencies": { + "@next/env": "16.1.0", + "@swc/helpers": "0.5.15", + "baseline-browser-mapping": "^2.8.3", + "caniuse-lite": "^1.0.30001579", + "postcss": "8.4.31", + "styled-jsx": "5.1.6" + }, + "bin": { + "next": "dist/bin/next" + }, + "engines": { + "node": ">=20.9.0" + }, + "optionalDependencies": { + "@next/swc-darwin-arm64": "16.1.0", + "@next/swc-darwin-x64": "16.1.0", + "@next/swc-linux-arm64-gnu": "16.1.0", + "@next/swc-linux-arm64-musl": "16.1.0", + "@next/swc-linux-x64-gnu": "16.1.0", + "@next/swc-linux-x64-musl": "16.1.0", + "@next/swc-win32-arm64-msvc": "16.1.0", + "@next/swc-win32-x64-msvc": "16.1.0", + "sharp": "^0.34.4" + }, + "peerDependencies": { + "@opentelemetry/api": "^1.1.0", + "@playwright/test": "^1.51.1", + "babel-plugin-react-compiler": "*", + "react": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", + "react-dom": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", + "sass": "^1.3.0" + }, + "peerDependenciesMeta": { + "@opentelemetry/api": { + "optional": true + }, + "@playwright/test": { + "optional": true + }, + "babel-plugin-react-compiler": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, + "node_modules/next/node_modules/@next/swc-win32-x64-msvc": { + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-16.1.0.tgz", + "integrity": "sha512-Tr0j94MphimCCks+1rtYPzQFK+faJuhHWCegU9S9gDlgyOk8Y3kPmO64UcjyzZAlligeBtYZ/2bEyrKq0d2wqQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/next/node_modules/postcss": { + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "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.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/node-releases": { + "version": "2.0.27", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz", + "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==", + "dev": true + }, + "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-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.entries": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz", + "integrity": "sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", + "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.values": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", + "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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/own-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", + "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.6", + "object-keys": "^1.1.1", + "safe-push-apply": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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/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, + "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-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "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/photoswipe": { + "version": "5.4.4", + "resolved": "https://registry.npmjs.org/photoswipe/-/photoswipe-5.4.4.tgz", + "integrity": "sha512-WNFHoKrkZNnvFFhbHL93WDkW3ifwVOXSW3w1UuZZelSmgXpIGiZSNlZJq37rR8YejqME2rHs9EhH9ZvlvFH2NA==", + "engines": { + "node": ">= 0.12.0" + } + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" + }, + "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/possible-typed-array-names": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", + "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/postcss": { + "version": "8.5.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", + "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", + "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.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "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/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dev": true, + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "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, + "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": "19.2.3", + "resolved": "https://registry.npmjs.org/react/-/react-19.2.3.tgz", + "integrity": "sha512-Ku/hhYbVjOQnXDZFv2+RibmLFGwFdeeKHFcOTlrt7xplBnya5OGn/hIRDsqDiSUcfORsDC7MPxwork8jBwsIWA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "19.2.3", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.3.tgz", + "integrity": "sha512-yELu4WmLPw5Mr/lmeEpox5rw3RETacE++JgHqQzd2dg+YbJuat3jH4ingc+WPZhxaoFzdv9y33G+F7Nl5O0GBg==", + "dependencies": { + "scheduler": "^0.27.0" + }, + "peerDependencies": { + "react": "^19.2.3" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "dev": true + }, + "node_modules/react-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/react-property/-/react-property-2.0.2.tgz", + "integrity": "sha512-+PbtI3VuDV0l6CleQMsx2gtK0JZbZKbpdu5ynr+lbsuvtmgbNcS3VM0tuY2QjFNOcWxvXeHjDpy42RO+4U2rug==" + }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", + "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.1", + "which-builtin-type": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve": { + "version": "1.22.11", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", + "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", + "dev": true, + "dependencies": { + "is-core-module": "^2.16.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "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, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", + "dev": true, + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "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/safe-array-concat": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", + "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "has-symbols": "^1.1.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-push-apply": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", + "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-regex-test": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-regex": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/scheduler": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz", + "integrity": "sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==" + }, + "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/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-proto": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", + "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", + "dev": true, + "dependencies": { + "dunder-proto": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/sharp": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.34.5.tgz", + "integrity": "sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg==", + "hasInstallScript": true, + "optional": true, + "dependencies": { + "@img/colour": "^1.0.0", + "detect-libc": "^2.1.2", + "semver": "^7.7.3" + }, + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-darwin-arm64": "0.34.5", + "@img/sharp-darwin-x64": "0.34.5", + "@img/sharp-libvips-darwin-arm64": "1.2.4", + "@img/sharp-libvips-darwin-x64": "1.2.4", + "@img/sharp-libvips-linux-arm": "1.2.4", + "@img/sharp-libvips-linux-arm64": "1.2.4", + "@img/sharp-libvips-linux-ppc64": "1.2.4", + "@img/sharp-libvips-linux-riscv64": "1.2.4", + "@img/sharp-libvips-linux-s390x": "1.2.4", + "@img/sharp-libvips-linux-x64": "1.2.4", + "@img/sharp-libvips-linuxmusl-arm64": "1.2.4", + "@img/sharp-libvips-linuxmusl-x64": "1.2.4", + "@img/sharp-linux-arm": "0.34.5", + "@img/sharp-linux-arm64": "0.34.5", + "@img/sharp-linux-ppc64": "0.34.5", + "@img/sharp-linux-riscv64": "0.34.5", + "@img/sharp-linux-s390x": "0.34.5", + "@img/sharp-linux-x64": "0.34.5", + "@img/sharp-linuxmusl-arm64": "0.34.5", + "@img/sharp-linuxmusl-x64": "0.34.5", + "@img/sharp-wasm32": "0.34.5", + "@img/sharp-win32-arm64": "0.34.5", + "@img/sharp-win32-ia32": "0.34.5", + "@img/sharp-win32-x64": "0.34.5" + } + }, + "node_modules/sharp/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "optional": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "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==", + "dev": true, + "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==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/sonner": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/sonner/-/sonner-2.0.7.tgz", + "integrity": "sha512-W6ZN4p58k8aDKA4XPcx2hpIQXBRAgyiWVkYhT7CvK6D3iAu7xjvVyhQHg2/iaKJZ1XVJ4r7XuwGL+WGEK37i9w==", + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0 || ^19.0.0-rc", + "react-dom": "^18.0.0 || ^19.0.0 || ^19.0.0-rc" + } + }, + "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==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/stable-hash": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/stable-hash/-/stable-hash-0.0.5.tgz", + "integrity": "sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==", + "dev": true + }, + "node_modules/stop-iteration-iterator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", + "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "internal-slot": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string.prototype.includes": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz", + "integrity": "sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.12", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.12.tgz", + "integrity": "sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.6", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.6", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "regexp.prototype.flags": "^1.5.3", + "set-function-name": "^2.0.2", + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.repeat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", + "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", + "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-data-property": "^1.1.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-object-atoms": "^1.0.0", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", + "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "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, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/style-to-js": { + "version": "1.1.21", + "resolved": "https://registry.npmjs.org/style-to-js/-/style-to-js-1.1.21.tgz", + "integrity": "sha512-RjQetxJrrUJLQPHbLku6U/ocGtzyjbJMP9lCNK7Ag0CNh690nSH8woqWH9u16nMjYBAok+i7JO1NP2pOy8IsPQ==", + "dependencies": { + "style-to-object": "1.0.14" + } + }, + "node_modules/style-to-object": { + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-1.0.14.tgz", + "integrity": "sha512-LIN7rULI0jBscWQYaSswptyderlarFkjQ+t79nzty8tcIAceVomEVlLzH5VP4Cmsv6MtKhs7qaAiwlcp+Mgaxw==", + "dependencies": { + "inline-style-parser": "0.2.7" + } + }, + "node_modules/styled-jsx": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.6.tgz", + "integrity": "sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==", + "dependencies": { + "client-only": "0.0.1" + }, + "engines": { + "node": ">= 12.0.0" + }, + "peerDependencies": { + "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0 || ^19.0.0-0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "babel-plugin-macros": { + "optional": true + } + } + }, + "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/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/swiper": { + "version": "12.0.3", + "resolved": "https://registry.npmjs.org/swiper/-/swiper-12.0.3.tgz", + "integrity": "sha512-BHd6U1VPEIksrXlyXjMmRWO0onmdNPaTAFduzqR3pgjvi7KfmUCAm/0cj49u2D7B0zNjMw02TSeXfinC1hDCXg==", + "funding": [ + { + "type": "patreon", + "url": "https://www.patreon.com/swiperjs" + }, + { + "type": "open_collective", + "url": "http://opencollective.com/swiper" + } + ], + "engines": { + "node": ">= 4.7.0" + } + }, + "node_modules/tailwindcss": { + "version": "4.1.18", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.1.18.tgz", + "integrity": "sha512-4+Z+0yiYyEtUVCScyfHCxOYP06L5Ne+JiHhY2IjR2KWMIWhJOYZKLSGZaP5HkZ8+bY0cxfzwDE5uOmzFXyIwxw==", + "dev": true + }, + "node_modules/tapable": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.0.tgz", + "integrity": "sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "dev": true, + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tinyglobby/node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/tinyglobby/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "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": "2.4.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.4.0.tgz", + "integrity": "sha512-3TaVTaAv2gTiMB35i3FiGJaRfwb3Pyn/j3m/bfAvGe8FB7CF6u+LMYqYlDh7reQf7UNvoTvdfAqHGmPGOSsPmA==", + "dev": true, + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" + } + }, + "node_modules/tsconfig-paths": { + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", + "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", + "dev": true, + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tsconfig-paths/node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==" + }, + "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/typed-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", + "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", + "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", + "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.15", + "reflect.getprototypeof": "^1.0.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", + "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0", + "reflect.getprototypeof": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typescript": { + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/typescript-eslint": { + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.53.0.tgz", + "integrity": "sha512-xHURCQNxZ1dsWn0sdOaOfCSQG0HKeqSj9OexIxrz6ypU6wHYOdX2I3D2b8s8wFSsSOYJb+6q283cLiLlkEsBYw==", + "dev": true, + "dependencies": { + "@typescript-eslint/eslint-plugin": "8.53.0", + "@typescript-eslint/parser": "8.53.0", + "@typescript-eslint/typescript-estree": "8.53.0", + "@typescript-eslint/utils": "8.53.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/unbox-primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", + "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "has-bigints": "^1.0.2", + "has-symbols": "^1.1.0", + "which-boxed-primitive": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "dev": true + }, + "node_modules/unrs-resolver": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/unrs-resolver/-/unrs-resolver-1.11.1.tgz", + "integrity": "sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "napi-postinstall": "^0.3.0" + }, + "funding": { + "url": "https://opencollective.com/unrs-resolver" + }, + "optionalDependencies": { + "@unrs/resolver-binding-android-arm-eabi": "1.11.1", + "@unrs/resolver-binding-android-arm64": "1.11.1", + "@unrs/resolver-binding-darwin-arm64": "1.11.1", + "@unrs/resolver-binding-darwin-x64": "1.11.1", + "@unrs/resolver-binding-freebsd-x64": "1.11.1", + "@unrs/resolver-binding-linux-arm-gnueabihf": "1.11.1", + "@unrs/resolver-binding-linux-arm-musleabihf": "1.11.1", + "@unrs/resolver-binding-linux-arm64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-arm64-musl": "1.11.1", + "@unrs/resolver-binding-linux-ppc64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-riscv64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-riscv64-musl": "1.11.1", + "@unrs/resolver-binding-linux-s390x-gnu": "1.11.1", + "@unrs/resolver-binding-linux-x64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-x64-musl": "1.11.1", + "@unrs/resolver-binding-wasm32-wasi": "1.11.1", + "@unrs/resolver-binding-win32-arm64-msvc": "1.11.1", + "@unrs/resolver-binding-win32-ia32-msvc": "1.11.1", + "@unrs/resolver-binding-win32-x64-msvc": "1.11.1" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", + "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", + "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.1" + }, + "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, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", + "dev": true, + "dependencies": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", + "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.1.0", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.2.1", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.1.0", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-collection": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", + "dev": true, + "dependencies": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", + "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "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" + } + }, + "node_modules/zod": { + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/zod/-/zod-4.3.5.tgz", + "integrity": "sha512-k7Nwx6vuWx1IJ9Bjuf4Zt1PEllcwe7cls3VNzm4CQ1/hgtFUK2bRNG3rvnpPUhFjmqJKAKtjV576KnUkHocg/g==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + }, + "node_modules/zod-validation-error": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/zod-validation-error/-/zod-validation-error-4.0.2.tgz", + "integrity": "sha512-Q6/nZLe6jxuU80qb/4uJ4t5v2VEZ44lzQjPDhYJNztRQ4wyWc6VF3D3Kb/fAuPetZQnhS3hnajCf9CsWesghLQ==", + "dev": true, + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "zod": "^3.25.0 || ^4.0.0" + } } - ], - "dependencies": { - "browserslist": "^4.28.1", - "caniuse-lite": "^1.0.30001760", - "fraction.js": "^5.3.4", - "picocolors": "^1.1.1", - "postcss-value-parser": "^4.2.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, - "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/available-typed-arrays": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", - "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", - "dev": true, - "dependencies": { - "possible-typed-array-names": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/axe-core": { - "version": "4.11.1", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.11.1.tgz", - "integrity": "sha512-BASOg+YwO2C+346x3LZOeoovTIoTrRqEsqMa6fmfAV0P+U9mFr9NsyOEpiYvFjbc64NMrSswhV50WdXzdb/Z5A==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/axobject-query": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", - "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "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==", - "dev": true - }, - "node_modules/baseline-browser-mapping": { - "version": "2.9.14", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.9.14.tgz", - "integrity": "sha512-B0xUquLkiGLgHhpPBqvl7GWegWBUNuujQ6kXd/r1U38ElPT6Ok8KZ8e+FpUGEc2ZoRQUzq/aUnaKFc/svWUGSg==", - "bin": { - "baseline-browser-mapping": "dist/cli.js" - } - }, - "node_modules/brace-expansion": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", - "dev": true, - "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.28.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz", - "integrity": "sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==", - "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": { - "baseline-browser-mapping": "^2.9.0", - "caniuse-lite": "^1.0.30001759", - "electron-to-chromium": "^1.5.263", - "node-releases": "^2.0.27", - "update-browserslist-db": "^1.2.0" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/call-bind": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", - "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", - "dev": true, - "dependencies": { - "call-bind-apply-helpers": "^1.0.0", - "es-define-property": "^1.0.0", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/call-bind-apply-helpers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", - "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", - "dev": true, - "dependencies": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/call-bound": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", - "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", - "dev": true, - "dependencies": { - "call-bind-apply-helpers": "^1.0.2", - "get-intrinsic": "^1.3.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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, - "engines": { - "node": ">=6" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001764", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001764.tgz", - "integrity": "sha512-9JGuzl2M+vPL+pz70gtMF9sHdMFbY9FJaQBi186cHKH3pSzDvzoUJUPV6fqiKIMyXbud9ZLg4F3Yza1vJ1+93g==", - "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" - } - ] - }, - "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/client-only": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", - "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" - }, - "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/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/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "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==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/csstype": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", - "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", - "devOptional": true - }, - "node_modules/damerau-levenshtein": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", - "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", - "dev": true - }, - "node_modules/data-view-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", - "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/data-view-byte-length": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", - "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/inspect-js" - } - }, - "node_modules/data-view-byte-offset": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", - "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/debug": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", - "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", - "dev": true, - "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/define-data-property": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", - "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", - "dev": true, - "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/define-properties": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", - "dev": true, - "dependencies": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/detect-libc": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", - "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", - "devOptional": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/dom-serializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", - "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/dom-serializer/node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ] - }, - "node_modules/domhandler": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", - "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", - "dependencies": { - "domelementtype": "^2.3.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/domutils": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz", - "integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==", - "dependencies": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/dunder-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", - "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", - "dev": true, - "dependencies": { - "call-bind-apply-helpers": "^1.0.1", - "es-errors": "^1.3.0", - "gopd": "^1.2.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/electron-to-chromium": { - "version": "1.5.267", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.267.tgz", - "integrity": "sha512-0Drusm6MVRXSOJpGbaSVgcQsuB4hEkMpHXaVstcPmhu5LIedxs1xNK/nIxmQIU/RPC0+1/o0AVZfBTkTNJOdUw==", - "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==", - "dev": true - }, - "node_modules/enhanced-resolve": { - "version": "5.18.4", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.4.tgz", - "integrity": "sha512-LgQMM4WXU3QI+SYgEc2liRgznaD5ojbmY3sb8LxyguVkIg5FxdpTkvk72te2R38/TGKxH634oLxXRGY6d7AP+Q==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/entities": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-7.0.1.tgz", - "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/es-abstract": { - "version": "1.24.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.1.tgz", - "integrity": "sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw==", - "dev": true, - "dependencies": { - "array-buffer-byte-length": "^1.0.2", - "arraybuffer.prototype.slice": "^1.0.4", - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "data-view-buffer": "^1.0.2", - "data-view-byte-length": "^1.0.2", - "data-view-byte-offset": "^1.0.1", - "es-define-property": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.1.1", - "es-set-tostringtag": "^2.1.0", - "es-to-primitive": "^1.3.0", - "function.prototype.name": "^1.1.8", - "get-intrinsic": "^1.3.0", - "get-proto": "^1.0.1", - "get-symbol-description": "^1.1.0", - "globalthis": "^1.0.4", - "gopd": "^1.2.0", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.2.0", - "has-symbols": "^1.1.0", - "hasown": "^2.0.2", - "internal-slot": "^1.1.0", - "is-array-buffer": "^3.0.5", - "is-callable": "^1.2.7", - "is-data-view": "^1.0.2", - "is-negative-zero": "^2.0.3", - "is-regex": "^1.2.1", - "is-set": "^2.0.3", - "is-shared-array-buffer": "^1.0.4", - "is-string": "^1.1.1", - "is-typed-array": "^1.1.15", - "is-weakref": "^1.1.1", - "math-intrinsics": "^1.1.0", - "object-inspect": "^1.13.4", - "object-keys": "^1.1.1", - "object.assign": "^4.1.7", - "own-keys": "^1.0.1", - "regexp.prototype.flags": "^1.5.4", - "safe-array-concat": "^1.1.3", - "safe-push-apply": "^1.0.0", - "safe-regex-test": "^1.1.0", - "set-proto": "^1.0.0", - "stop-iteration-iterator": "^1.1.0", - "string.prototype.trim": "^1.2.10", - "string.prototype.trimend": "^1.0.9", - "string.prototype.trimstart": "^1.0.8", - "typed-array-buffer": "^1.0.3", - "typed-array-byte-length": "^1.0.3", - "typed-array-byte-offset": "^1.0.4", - "typed-array-length": "^1.0.7", - "unbox-primitive": "^1.1.0", - "which-typed-array": "^1.1.19" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-define-property": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", - "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-iterator-helpers": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.2.tgz", - "integrity": "sha512-BrUQ0cPTB/IwXj23HtwHjS9n7O4h9FX94b4xc5zlTHxeLgTAdzYUDyy6KdExAl9lbN5rtfe44xpjpmj9grxs5w==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "define-properties": "^1.2.1", - "es-abstract": "^1.24.1", - "es-errors": "^1.3.0", - "es-set-tostringtag": "^2.1.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.3.0", - "globalthis": "^1.0.4", - "gopd": "^1.2.0", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.2.0", - "has-symbols": "^1.1.0", - "internal-slot": "^1.1.0", - "iterator.prototype": "^1.1.5", - "safe-array-concat": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-object-atoms": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", - "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", - "dev": true, - "dependencies": { - "es-errors": "^1.3.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-set-tostringtag": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", - "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", - "dev": true, - "dependencies": { - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-shim-unscopables": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", - "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", - "dev": true, - "dependencies": { - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-to-primitive": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", - "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", - "dev": true, - "dependencies": { - "is-callable": "^1.2.7", - "is-date-object": "^1.0.5", - "is-symbol": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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": "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": { - "version": "9.39.2", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.2.tgz", - "integrity": "sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.8.0", - "@eslint-community/regexpp": "^4.12.1", - "@eslint/config-array": "^0.21.1", - "@eslint/config-helpers": "^0.4.2", - "@eslint/core": "^0.17.0", - "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.39.2", - "@eslint/plugin-kit": "^0.4.1", - "@humanfs/node": "^0.16.6", - "@humanwhocodes/module-importer": "^1.0.1", - "@humanwhocodes/retry": "^0.4.2", - "@types/estree": "^1.0.6", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.6", - "debug": "^4.3.2", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^8.4.0", - "eslint-visitor-keys": "^4.2.1", - "espree": "^10.4.0", - "esquery": "^1.5.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^8.0.0", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://eslint.org/donate" - }, - "peerDependencies": { - "jiti": "*" - }, - "peerDependenciesMeta": { - "jiti": { - "optional": true - } - } - }, - "node_modules/eslint-config-next": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-16.1.0.tgz", - "integrity": "sha512-RlPb8E2uO/Ix/w3kizxz6+6ogw99WqtNzTG0ArRZ5NEkIYcsfRb8U0j7aTG7NjRvcrsak5QtUSuxGNN2UcA58g==", - "dev": true, - "dependencies": { - "@next/eslint-plugin-next": "16.1.0", - "eslint-import-resolver-node": "^0.3.6", - "eslint-import-resolver-typescript": "^3.5.2", - "eslint-plugin-import": "^2.32.0", - "eslint-plugin-jsx-a11y": "^6.10.0", - "eslint-plugin-react": "^7.37.0", - "eslint-plugin-react-hooks": "^7.0.0", - "globals": "16.4.0", - "typescript-eslint": "^8.46.0" - }, - "peerDependencies": { - "eslint": ">=9.0.0", - "typescript": ">=3.3.1" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/eslint-config-next/node_modules/globals": { - "version": "16.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-16.4.0.tgz", - "integrity": "sha512-ob/2LcVVaVGCYN+r14cnwnoDPUufjiYgSqRhiFD0Q1iI4Odora5RE8Iv1D24hAz5oMophRGkGz+yuvQmmUMnMw==", - "dev": true, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint-import-resolver-node": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", - "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", - "dev": true, - "dependencies": { - "debug": "^3.2.7", - "is-core-module": "^2.13.0", - "resolve": "^1.22.4" - } - }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-import-resolver-typescript": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.10.1.tgz", - "integrity": "sha512-A1rHYb06zjMGAxdLSkN2fXPBwuSaQ0iO5M/hdyS0Ajj1VBaRp0sPD3dn1FhME3c/JluGFbwSxyCfqdSbtQLAHQ==", - "dev": true, - "dependencies": { - "@nolyfill/is-core-module": "1.0.39", - "debug": "^4.4.0", - "get-tsconfig": "^4.10.0", - "is-bun-module": "^2.0.0", - "stable-hash": "^0.0.5", - "tinyglobby": "^0.2.13", - "unrs-resolver": "^1.6.2" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint-import-resolver-typescript" - }, - "peerDependencies": { - "eslint": "*", - "eslint-plugin-import": "*", - "eslint-plugin-import-x": "*" - }, - "peerDependenciesMeta": { - "eslint-plugin-import": { - "optional": true - }, - "eslint-plugin-import-x": { - "optional": true - } - } - }, - "node_modules/eslint-module-utils": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.1.tgz", - "integrity": "sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==", - "dev": true, - "dependencies": { - "debug": "^3.2.7" - }, - "engines": { - "node": ">=4" - }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - } - } - }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-plugin-import": { - "version": "2.32.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.32.0.tgz", - "integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==", - "dev": true, - "dependencies": { - "@rtsao/scc": "^1.1.0", - "array-includes": "^3.1.9", - "array.prototype.findlastindex": "^1.2.6", - "array.prototype.flat": "^1.3.3", - "array.prototype.flatmap": "^1.3.3", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.12.1", - "hasown": "^2.0.2", - "is-core-module": "^2.16.1", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.8", - "object.groupby": "^1.0.3", - "object.values": "^1.2.1", - "semver": "^6.3.1", - "string.prototype.trimend": "^1.0.9", - "tsconfig-paths": "^3.15.0" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" - } - }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-plugin-jsx-a11y": { - "version": "6.10.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.2.tgz", - "integrity": "sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==", - "dev": true, - "dependencies": { - "aria-query": "^5.3.2", - "array-includes": "^3.1.8", - "array.prototype.flatmap": "^1.3.2", - "ast-types-flow": "^0.0.8", - "axe-core": "^4.10.0", - "axobject-query": "^4.1.0", - "damerau-levenshtein": "^1.0.8", - "emoji-regex": "^9.2.2", - "hasown": "^2.0.2", - "jsx-ast-utils": "^3.3.5", - "language-tags": "^1.0.9", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.8", - "safe-regex-test": "^1.0.3", - "string.prototype.includes": "^2.0.1" - }, - "engines": { - "node": ">=4.0" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9" - } - }, - "node_modules/eslint-plugin-react": { - "version": "7.37.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.5.tgz", - "integrity": "sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.8", - "array.prototype.findlast": "^1.2.5", - "array.prototype.flatmap": "^1.3.3", - "array.prototype.tosorted": "^1.1.4", - "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.2.1", - "estraverse": "^5.3.0", - "hasown": "^2.0.2", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.1.2", - "object.entries": "^1.1.9", - "object.fromentries": "^2.0.8", - "object.values": "^1.2.1", - "prop-types": "^15.8.1", - "resolve": "^2.0.0-next.5", - "semver": "^6.3.1", - "string.prototype.matchall": "^4.0.12", - "string.prototype.repeat": "^1.0.0" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" - } - }, - "node_modules/eslint-plugin-react-hooks": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-7.0.1.tgz", - "integrity": "sha512-O0d0m04evaNzEPoSW+59Mezf8Qt0InfgGIBJnpC0h3NH/WjUAR7BIKUfysC6todmtiZ/A0oUVS8Gce0WhBrHsA==", - "dev": true, - "dependencies": { - "@babel/core": "^7.24.4", - "@babel/parser": "^7.24.4", - "hermes-parser": "^0.25.1", - "zod": "^3.25.0 || ^4.0.0", - "zod-validation-error": "^3.5.0 || ^4.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" - } - }, - "node_modules/eslint-plugin-react/node_modules/resolve": { - "version": "2.0.0-next.5", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", - "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", - "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/eslint-scope": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", - "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/espree": { - "version": "10.4.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", - "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", - "dev": true, - "dependencies": { - "acorn": "^8.15.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^4.2.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/esquery": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.7.0.tgz", - "integrity": "sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==", - "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, - "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, - "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 - }, - "node_modules/fast-glob": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", - "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", - "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 - }, - "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.20.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.20.1.tgz", - "integrity": "sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==", - "dev": true, - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/file-entry-cache": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", - "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", - "dev": true, - "dependencies": { - "flat-cache": "^4.0.0" - }, - "engines": { - "node": ">=16.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": "4.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", - "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", - "dev": true, - "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.4" - }, - "engines": { - "node": ">=16" - } - }, - "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 - }, - "node_modules/for-each": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", - "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", - "dev": true, - "dependencies": { - "is-callable": "^1.2.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/fraction.js": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-5.3.4.tgz", - "integrity": "sha512-1X1NTtiJphryn/uLQz3whtY6jK3fTqoE3ohKs0tT+Ujr1W59oopxmoEh7Lu5p6vBaPbgoM0bzveAW4Qi5RyWDQ==", - "dev": true, - "engines": { - "node": "*" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/rawify" - } - }, - "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/function.prototype.name": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", - "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "functions-have-names": "^1.2.3", - "hasown": "^2.0.2", - "is-callable": "^1.2.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/generator-function": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/generator-function/-/generator-function-2.0.1.tgz", - "integrity": "sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "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/get-intrinsic": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", - "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", - "dev": true, - "dependencies": { - "call-bind-apply-helpers": "^1.0.2", - "es-define-property": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.1.1", - "function-bind": "^1.1.2", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "has-symbols": "^1.1.0", - "hasown": "^2.0.2", - "math-intrinsics": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", - "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", - "dev": true, - "dependencies": { - "dunder-proto": "^1.0.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/get-symbol-description": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", - "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-tsconfig": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.13.0.tgz", - "integrity": "sha512-1VKTZJCwBrvbd+Wn3AOgQP/2Av+TfTCOlE4AcRJE72W1ksZXbAx8PPBR9RzgTeSPzlPMHrbANMH3LbltH73wxQ==", - "dev": true, - "dependencies": { - "resolve-pkg-maps": "^1.0.0" - }, - "funding": { - "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" - } - }, - "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/globals": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", - "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", - "dev": true, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/globalthis": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", - "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", - "dev": true, - "dependencies": { - "define-properties": "^1.2.1", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/gopd": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", - "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true - }, - "node_modules/has-bigints": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", - "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/has-property-descriptors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", - "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", - "dev": true, - "dependencies": { - "es-define-property": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", - "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", - "dev": true, - "dependencies": { - "dunder-proto": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", - "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-tostringtag": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", - "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/hermes-estree": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.25.1.tgz", - "integrity": "sha512-0wUoCcLp+5Ev5pDW2OriHC2MJCbwLwuRx+gAqMTOkGKJJiBCLjtrvy4PWUGn6MIVefecRpzoOZ/UV6iGdOr+Cw==", - "dev": true - }, - "node_modules/hermes-parser": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.25.1.tgz", - "integrity": "sha512-6pEjquH3rqaI6cYAXYPcz9MS4rY6R4ngRgrgfDshRptUZIc3lw0MCIJIGDj9++mfySOuPTHB4nrSW99BCvOPIA==", - "dev": true, - "dependencies": { - "hermes-estree": "0.25.1" - } - }, - "node_modules/html-dom-parser": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/html-dom-parser/-/html-dom-parser-5.1.4.tgz", - "integrity": "sha512-UGjp7y8jSrDU2RdN2J9FDOo3X+WBu+LkS/I3TjjFW020ocZWjPvave+RKk1zeuY2sUWy5fh6zHgXHthzDGlFNQ==", - "dependencies": { - "domhandler": "5.0.3", - "htmlparser2": "10.1.0" - } - }, - "node_modules/html-react-parser": { - "version": "5.2.14", - "resolved": "https://registry.npmjs.org/html-react-parser/-/html-react-parser-5.2.14.tgz", - "integrity": "sha512-yiSZHuJq6LwQc450IhpLApug8bKTpHv5oVsClpVS1jEDepifXYcJu0Sw0r7pqEl89q/ZpO0nth6LEDWtz5n6qg==", - "dependencies": { - "domhandler": "5.0.3", - "html-dom-parser": "5.1.4", - "react-property": "2.0.2", - "style-to-js": "1.1.21" - }, - "peerDependencies": { - "@types/react": "0.14 || 15 || 16 || 17 || 18 || 19", - "react": "0.14 || 15 || 16 || 17 || 18 || 19" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/htmlparser2": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-10.1.0.tgz", - "integrity": "sha512-VTZkM9GWRAtEpveh7MSF6SjjrpNVNNVJfFup7xTY3UpFtm67foy9HDVXneLtFVt4pMz5kZtgNcvCniNFb1hlEQ==", - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.2.2", - "entities": "^7.0.1" - } - }, - "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, - "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/inline-style-parser": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.7.tgz", - "integrity": "sha512-Nb2ctOyNR8DqQoR0OwRG95uNWIC0C1lCgf5Naz5H6Ji72KZ8OcFZLz2P5sNgwlyoJ8Yif11oMuYs5pBQa86csA==" - }, - "node_modules/internal-slot": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", - "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", - "dev": true, - "dependencies": { - "es-errors": "^1.3.0", - "hasown": "^2.0.2", - "side-channel": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/is-array-buffer": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", - "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "get-intrinsic": "^1.2.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-async-function": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", - "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", - "dev": true, - "dependencies": { - "async-function": "^1.0.0", - "call-bound": "^1.0.3", - "get-proto": "^1.0.1", - "has-tostringtag": "^1.0.2", - "safe-regex-test": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-bigint": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", - "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", - "dev": true, - "dependencies": { - "has-bigints": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-boolean-object": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", - "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-bun-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-bun-module/-/is-bun-module-2.0.0.tgz", - "integrity": "sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ==", - "dev": true, - "dependencies": { - "semver": "^7.7.1" - } - }, - "node_modules/is-bun-module/node_modules/semver": { - "version": "7.7.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", - "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-core-module": { - "version": "2.16.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", - "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", - "dev": true, - "dependencies": { - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-data-view": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", - "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.2", - "get-intrinsic": "^1.2.6", - "is-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-date-object": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", - "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.2", - "has-tostringtag": "^1.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-finalizationregistry": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", - "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-generator-function": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.2.tgz", - "integrity": "sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.4", - "generator-function": "^2.0.0", - "get-proto": "^1.0.1", - "has-tostringtag": "^1.0.2", - "safe-regex-test": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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-map": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", - "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-negative-zero": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", - "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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-number-object": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", - "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-regex": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", - "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.2", - "gopd": "^1.2.0", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-set": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", - "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", - "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-string": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", - "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-symbol": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", - "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.2", - "has-symbols": "^1.1.0", - "safe-regex-test": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typed-array": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", - "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", - "dev": true, - "dependencies": { - "which-typed-array": "^1.1.16" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakmap": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", - "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakref": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", - "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakset": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", - "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.3", - "get-intrinsic": "^1.2.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/iterator.prototype": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.5.tgz", - "integrity": "sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==", - "dev": true, - "dependencies": { - "define-data-property": "^1.1.4", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.6", - "get-proto": "^1.0.0", - "has-symbols": "^1.1.0", - "set-function-name": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/jiti": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.6.1.tgz", - "integrity": "sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==", - "dev": true, - "bin": { - "jiti": "lib/jiti-cli.mjs" - } - }, - "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==", - "dev": true - }, - "node_modules/js-yaml": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", - "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", - "dev": true, - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsesc": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", - "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", - "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 - }, - "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 - }, - "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/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/jsx-ast-utils": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", - "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.flat": "^1.3.1", - "object.assign": "^4.1.4", - "object.values": "^1.1.6" - }, - "engines": { - "node": ">=4.0" - } - }, - "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, - "dependencies": { - "json-buffer": "3.0.1" - } - }, - "node_modules/language-subtag-registry": { - "version": "0.3.23", - "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.23.tgz", - "integrity": "sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==", - "dev": true - }, - "node_modules/language-tags": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz", - "integrity": "sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==", - "dev": true, - "dependencies": { - "language-subtag-registry": "^0.3.20" - }, - "engines": { - "node": ">=0.10" - } - }, - "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/lightningcss": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.30.2.tgz", - "integrity": "sha512-utfs7Pr5uJyyvDETitgsaqSyjCb2qNRAtuqUeWIAKztsOYdcACf2KtARYXg2pSvhkt+9NfoaNY7fxjl6nuMjIQ==", - "dev": true, - "dependencies": { - "detect-libc": "^2.0.3" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "optionalDependencies": { - "lightningcss-android-arm64": "1.30.2", - "lightningcss-darwin-arm64": "1.30.2", - "lightningcss-darwin-x64": "1.30.2", - "lightningcss-freebsd-x64": "1.30.2", - "lightningcss-linux-arm-gnueabihf": "1.30.2", - "lightningcss-linux-arm64-gnu": "1.30.2", - "lightningcss-linux-arm64-musl": "1.30.2", - "lightningcss-linux-x64-gnu": "1.30.2", - "lightningcss-linux-x64-musl": "1.30.2", - "lightningcss-win32-arm64-msvc": "1.30.2", - "lightningcss-win32-x64-msvc": "1.30.2" - } - }, - "node_modules/lightningcss-android-arm64": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.30.2.tgz", - "integrity": "sha512-BH9sEdOCahSgmkVhBLeU7Hc9DWeZ1Eb6wNS6Da8igvUwAe0sqROHddIlvU06q3WyXVEOYDZ6ykBZQnjTbmo4+A==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-darwin-arm64": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.30.2.tgz", - "integrity": "sha512-ylTcDJBN3Hp21TdhRT5zBOIi73P6/W0qwvlFEk22fkdXchtNTOU4Qc37SkzV+EKYxLouZ6M4LG9NfZ1qkhhBWA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-darwin-x64": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.30.2.tgz", - "integrity": "sha512-oBZgKchomuDYxr7ilwLcyms6BCyLn0z8J0+ZZmfpjwg9fRVZIR5/GMXd7r9RH94iDhld3UmSjBM6nXWM2TfZTQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-freebsd-x64": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.30.2.tgz", - "integrity": "sha512-c2bH6xTrf4BDpK8MoGG4Bd6zAMZDAXS569UxCAGcA7IKbHNMlhGQ89eRmvpIUGfKWNVdbhSbkQaWhEoMGmGslA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-arm-gnueabihf": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.30.2.tgz", - "integrity": "sha512-eVdpxh4wYcm0PofJIZVuYuLiqBIakQ9uFZmipf6LF/HRj5Bgm0eb3qL/mr1smyXIS1twwOxNWndd8z0E374hiA==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-arm64-gnu": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.30.2.tgz", - "integrity": "sha512-UK65WJAbwIJbiBFXpxrbTNArtfuznvxAJw4Q2ZGlU8kPeDIWEX1dg3rn2veBVUylA2Ezg89ktszWbaQnxD/e3A==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-arm64-musl": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.30.2.tgz", - "integrity": "sha512-5Vh9dGeblpTxWHpOx8iauV02popZDsCYMPIgiuw97OJ5uaDsL86cnqSFs5LZkG3ghHoX5isLgWzMs+eD1YzrnA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-x64-gnu": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.30.2.tgz", - "integrity": "sha512-Cfd46gdmj1vQ+lR6VRTTadNHu6ALuw2pKR9lYq4FnhvgBc4zWY1EtZcAc6EffShbb1MFrIPfLDXD6Xprbnni4w==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-x64-musl": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.30.2.tgz", - "integrity": "sha512-XJaLUUFXb6/QG2lGIW6aIk6jKdtjtcffUT0NKvIqhSBY3hh9Ch+1LCeH80dR9q9LBjG3ewbDjnumefsLsP6aiA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-win32-arm64-msvc": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.30.2.tgz", - "integrity": "sha512-FZn+vaj7zLv//D/192WFFVA0RgHawIcHqLX9xuWiQt7P0PtdFEVaxgF9rjM/IRYHQXNnk61/H/gb2Ei+kUQ4xQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss/node_modules/lightningcss-win32-x64-msvc": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.30.2.tgz", - "integrity": "sha512-5g1yc73p+iAkid5phb4oVFMB45417DkRevRbt/El/gKXJk4jid+vPFF/AXbxn05Aky8PapwzZrdJShv5C0avjw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "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.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==", - "dev": true, - "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/magic-string": { - "version": "0.30.21", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", - "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", - "dev": true, - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.5.5" - } - }, - "node_modules/math-intrinsics": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", - "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "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, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/nanoid": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", - "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", - "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/napi-postinstall": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.3.4.tgz", - "integrity": "sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==", - "dev": true, - "bin": { - "napi-postinstall": "lib/cli.js" - }, - "engines": { - "node": "^12.20.0 || ^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/napi-postinstall" - } - }, - "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/next": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/next/-/next-16.1.0.tgz", - "integrity": "sha512-Y+KbmDbefYtHDDQKLNrmzE/YYzG2msqo2VXhzh5yrJ54tx/6TmGdkR5+kP9ma7i7LwZpZMfoY3m/AoPPPKxtVw==", - "dependencies": { - "@next/env": "16.1.0", - "@swc/helpers": "0.5.15", - "baseline-browser-mapping": "^2.8.3", - "caniuse-lite": "^1.0.30001579", - "postcss": "8.4.31", - "styled-jsx": "5.1.6" - }, - "bin": { - "next": "dist/bin/next" - }, - "engines": { - "node": ">=20.9.0" - }, - "optionalDependencies": { - "@next/swc-darwin-arm64": "16.1.0", - "@next/swc-darwin-x64": "16.1.0", - "@next/swc-linux-arm64-gnu": "16.1.0", - "@next/swc-linux-arm64-musl": "16.1.0", - "@next/swc-linux-x64-gnu": "16.1.0", - "@next/swc-linux-x64-musl": "16.1.0", - "@next/swc-win32-arm64-msvc": "16.1.0", - "@next/swc-win32-x64-msvc": "16.1.0", - "sharp": "^0.34.4" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.1.0", - "@playwright/test": "^1.51.1", - "babel-plugin-react-compiler": "*", - "react": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", - "react-dom": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", - "sass": "^1.3.0" - }, - "peerDependenciesMeta": { - "@opentelemetry/api": { - "optional": true - }, - "@playwright/test": { - "optional": true - }, - "babel-plugin-react-compiler": { - "optional": true - }, - "sass": { - "optional": true - } - } - }, - "node_modules/next/node_modules/@next/swc-win32-x64-msvc": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-16.1.0.tgz", - "integrity": "sha512-Tr0j94MphimCCks+1rtYPzQFK+faJuhHWCegU9S9gDlgyOk8Y3kPmO64UcjyzZAlligeBtYZ/2bEyrKq0d2wqQ==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/next/node_modules/postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", - "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.6", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/node-releases": { - "version": "2.0.27", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz", - "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==", - "dev": true - }, - "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-inspect": { - "version": "1.13.4", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", - "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", - "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0", - "has-symbols": "^1.1.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.entries": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz", - "integrity": "sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.fromentries": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", - "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.groupby": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", - "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.values": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", - "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/own-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", - "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.2.6", - "object-keys": "^1.1.1", - "safe-push-apply": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/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, - "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-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "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/photoswipe": { - "version": "5.4.4", - "resolved": "https://registry.npmjs.org/photoswipe/-/photoswipe-5.4.4.tgz", - "integrity": "sha512-WNFHoKrkZNnvFFhbHL93WDkW3ifwVOXSW3w1UuZZelSmgXpIGiZSNlZJq37rR8YejqME2rHs9EhH9ZvlvFH2NA==", - "engines": { - "node": ">= 0.12.0" - } - }, - "node_modules/picocolors": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" - }, - "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/possible-typed-array-names": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", - "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/postcss": { - "version": "8.5.6", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", - "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", - "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.11", - "picocolors": "^1.1.1", - "source-map-js": "^1.2.1" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "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/prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "dev": true, - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.13.1" - } - }, - "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, - "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": "19.2.3", - "resolved": "https://registry.npmjs.org/react/-/react-19.2.3.tgz", - "integrity": "sha512-Ku/hhYbVjOQnXDZFv2+RibmLFGwFdeeKHFcOTlrt7xplBnya5OGn/hIRDsqDiSUcfORsDC7MPxwork8jBwsIWA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dom": { - "version": "19.2.3", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.3.tgz", - "integrity": "sha512-yELu4WmLPw5Mr/lmeEpox5rw3RETacE++JgHqQzd2dg+YbJuat3jH4ingc+WPZhxaoFzdv9y33G+F7Nl5O0GBg==", - "dependencies": { - "scheduler": "^0.27.0" - }, - "peerDependencies": { - "react": "^19.2.3" - } - }, - "node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "dev": true - }, - "node_modules/react-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/react-property/-/react-property-2.0.2.tgz", - "integrity": "sha512-+PbtI3VuDV0l6CleQMsx2gtK0JZbZKbpdu5ynr+lbsuvtmgbNcS3VM0tuY2QjFNOcWxvXeHjDpy42RO+4U2rug==" - }, - "node_modules/reflect.getprototypeof": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", - "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.9", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.7", - "get-proto": "^1.0.1", - "which-builtin-type": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/regexp.prototype.flags": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", - "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-errors": "^1.3.0", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "set-function-name": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve": { - "version": "1.22.11", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", - "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", - "dev": true, - "dependencies": { - "is-core-module": "^2.16.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "engines": { - "node": ">= 0.4" - }, - "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, - "engines": { - "node": ">=4" - } - }, - "node_modules/resolve-pkg-maps": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", - "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", - "dev": true, - "funding": { - "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" - } - }, - "node_modules/reusify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", - "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", - "dev": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "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/safe-array-concat": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", - "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "get-intrinsic": "^1.2.6", - "has-symbols": "^1.1.0", - "isarray": "^2.0.5" - }, - "engines": { - "node": ">=0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safe-push-apply": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", - "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", - "dev": true, - "dependencies": { - "es-errors": "^1.3.0", - "isarray": "^2.0.5" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safe-regex-test": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", - "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "is-regex": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/scheduler": { - "version": "0.27.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz", - "integrity": "sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==" - }, - "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/set-function-length": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", - "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", - "dev": true, - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/set-function-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", - "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", - "dev": true, - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/set-proto": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", - "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", - "dev": true, - "dependencies": { - "dunder-proto": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/sharp": { - "version": "0.34.5", - "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.34.5.tgz", - "integrity": "sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg==", - "hasInstallScript": true, - "optional": true, - "dependencies": { - "@img/colour": "^1.0.0", - "detect-libc": "^2.1.2", - "semver": "^7.7.3" - }, - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-darwin-arm64": "0.34.5", - "@img/sharp-darwin-x64": "0.34.5", - "@img/sharp-libvips-darwin-arm64": "1.2.4", - "@img/sharp-libvips-darwin-x64": "1.2.4", - "@img/sharp-libvips-linux-arm": "1.2.4", - "@img/sharp-libvips-linux-arm64": "1.2.4", - "@img/sharp-libvips-linux-ppc64": "1.2.4", - "@img/sharp-libvips-linux-riscv64": "1.2.4", - "@img/sharp-libvips-linux-s390x": "1.2.4", - "@img/sharp-libvips-linux-x64": "1.2.4", - "@img/sharp-libvips-linuxmusl-arm64": "1.2.4", - "@img/sharp-libvips-linuxmusl-x64": "1.2.4", - "@img/sharp-linux-arm": "0.34.5", - "@img/sharp-linux-arm64": "0.34.5", - "@img/sharp-linux-ppc64": "0.34.5", - "@img/sharp-linux-riscv64": "0.34.5", - "@img/sharp-linux-s390x": "0.34.5", - "@img/sharp-linux-x64": "0.34.5", - "@img/sharp-linuxmusl-arm64": "0.34.5", - "@img/sharp-linuxmusl-x64": "0.34.5", - "@img/sharp-wasm32": "0.34.5", - "@img/sharp-win32-arm64": "0.34.5", - "@img/sharp-win32-ia32": "0.34.5", - "@img/sharp-win32-x64": "0.34.5" - } - }, - "node_modules/sharp/node_modules/semver": { - "version": "7.7.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", - "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", - "optional": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "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==", - "dev": true, - "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==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/side-channel": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", - "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", - "dev": true, - "dependencies": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.3", - "side-channel-list": "^1.0.0", - "side-channel-map": "^1.0.1", - "side-channel-weakmap": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-list": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", - "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", - "dev": true, - "dependencies": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-map": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", - "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-weakmap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", - "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3", - "side-channel-map": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/sonner": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/sonner/-/sonner-2.0.7.tgz", - "integrity": "sha512-W6ZN4p58k8aDKA4XPcx2hpIQXBRAgyiWVkYhT7CvK6D3iAu7xjvVyhQHg2/iaKJZ1XVJ4r7XuwGL+WGEK37i9w==", - "peerDependencies": { - "react": "^18.0.0 || ^19.0.0 || ^19.0.0-rc", - "react-dom": "^18.0.0 || ^19.0.0 || ^19.0.0-rc" - } - }, - "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==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/stable-hash": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/stable-hash/-/stable-hash-0.0.5.tgz", - "integrity": "sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==", - "dev": true - }, - "node_modules/stop-iteration-iterator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", - "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", - "dev": true, - "dependencies": { - "es-errors": "^1.3.0", - "internal-slot": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/string.prototype.includes": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz", - "integrity": "sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.3" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/string.prototype.matchall": { - "version": "4.0.12", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.12.tgz", - "integrity": "sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.6", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.6", - "gopd": "^1.2.0", - "has-symbols": "^1.1.0", - "internal-slot": "^1.1.0", - "regexp.prototype.flags": "^1.5.3", - "set-function-name": "^2.0.2", - "side-channel": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.repeat": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", - "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" - } - }, - "node_modules/string.prototype.trim": { - "version": "1.2.10", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", - "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "define-data-property": "^1.1.4", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-object-atoms": "^1.0.0", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", - "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", - "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "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, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/style-to-js": { - "version": "1.1.21", - "resolved": "https://registry.npmjs.org/style-to-js/-/style-to-js-1.1.21.tgz", - "integrity": "sha512-RjQetxJrrUJLQPHbLku6U/ocGtzyjbJMP9lCNK7Ag0CNh690nSH8woqWH9u16nMjYBAok+i7JO1NP2pOy8IsPQ==", - "dependencies": { - "style-to-object": "1.0.14" - } - }, - "node_modules/style-to-object": { - "version": "1.0.14", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-1.0.14.tgz", - "integrity": "sha512-LIN7rULI0jBscWQYaSswptyderlarFkjQ+t79nzty8tcIAceVomEVlLzH5VP4Cmsv6MtKhs7qaAiwlcp+Mgaxw==", - "dependencies": { - "inline-style-parser": "0.2.7" - } - }, - "node_modules/styled-jsx": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.6.tgz", - "integrity": "sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==", - "dependencies": { - "client-only": "0.0.1" - }, - "engines": { - "node": ">= 12.0.0" - }, - "peerDependencies": { - "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0 || ^19.0.0-0" - }, - "peerDependenciesMeta": { - "@babel/core": { - "optional": true - }, - "babel-plugin-macros": { - "optional": true - } - } - }, - "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/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/swiper": { - "version": "12.0.3", - "resolved": "https://registry.npmjs.org/swiper/-/swiper-12.0.3.tgz", - "integrity": "sha512-BHd6U1VPEIksrXlyXjMmRWO0onmdNPaTAFduzqR3pgjvi7KfmUCAm/0cj49u2D7B0zNjMw02TSeXfinC1hDCXg==", - "funding": [ - { - "type": "patreon", - "url": "https://www.patreon.com/swiperjs" - }, - { - "type": "open_collective", - "url": "http://opencollective.com/swiper" - } - ], - "engines": { - "node": ">= 4.7.0" - } - }, - "node_modules/tailwindcss": { - "version": "4.1.18", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.1.18.tgz", - "integrity": "sha512-4+Z+0yiYyEtUVCScyfHCxOYP06L5Ne+JiHhY2IjR2KWMIWhJOYZKLSGZaP5HkZ8+bY0cxfzwDE5uOmzFXyIwxw==", - "dev": true - }, - "node_modules/tapable": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.0.tgz", - "integrity": "sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==", - "dev": true, - "engines": { - "node": ">=6" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/tinyglobby": { - "version": "0.2.15", - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", - "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", - "dev": true, - "dependencies": { - "fdir": "^6.5.0", - "picomatch": "^4.0.3" - }, - "engines": { - "node": ">=12.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/SuperchupuDev" - } - }, - "node_modules/tinyglobby/node_modules/fdir": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", - "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", - "dev": true, - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "picomatch": "^3 || ^4" - }, - "peerDependenciesMeta": { - "picomatch": { - "optional": true - } - } - }, - "node_modules/tinyglobby/node_modules/picomatch": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", - "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "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": "2.4.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.4.0.tgz", - "integrity": "sha512-3TaVTaAv2gTiMB35i3FiGJaRfwb3Pyn/j3m/bfAvGe8FB7CF6u+LMYqYlDh7reQf7UNvoTvdfAqHGmPGOSsPmA==", - "dev": true, - "engines": { - "node": ">=18.12" - }, - "peerDependencies": { - "typescript": ">=4.8.4" - } - }, - "node_modules/tsconfig-paths": { - "version": "3.15.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", - "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", - "dev": true, - "dependencies": { - "@types/json5": "^0.0.29", - "json5": "^1.0.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - } - }, - "node_modules/tsconfig-paths/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/tslib": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==" - }, - "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/typed-array-buffer": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", - "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-typed-array": "^1.1.14" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/typed-array-byte-length": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", - "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.8", - "for-each": "^0.3.3", - "gopd": "^1.2.0", - "has-proto": "^1.2.0", - "is-typed-array": "^1.1.14" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-byte-offset": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", - "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", - "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "for-each": "^0.3.3", - "gopd": "^1.2.0", - "has-proto": "^1.2.0", - "is-typed-array": "^1.1.15", - "reflect.getprototypeof": "^1.0.9" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-length": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", - "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "is-typed-array": "^1.1.13", - "possible-typed-array-names": "^1.0.0", - "reflect.getprototypeof": "^1.0.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typescript": { - "version": "5.9.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", - "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/typescript-eslint": { - "version": "8.53.0", - "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.53.0.tgz", - "integrity": "sha512-xHURCQNxZ1dsWn0sdOaOfCSQG0HKeqSj9OexIxrz6ypU6wHYOdX2I3D2b8s8wFSsSOYJb+6q283cLiLlkEsBYw==", - "dev": true, - "dependencies": { - "@typescript-eslint/eslint-plugin": "8.53.0", - "@typescript-eslint/parser": "8.53.0", - "@typescript-eslint/typescript-estree": "8.53.0", - "@typescript-eslint/utils": "8.53.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/unbox-primitive": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", - "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.3", - "has-bigints": "^1.0.2", - "has-symbols": "^1.1.0", - "which-boxed-primitive": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/undici-types": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", - "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", - "dev": true - }, - "node_modules/unrs-resolver": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/unrs-resolver/-/unrs-resolver-1.11.1.tgz", - "integrity": "sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg==", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "napi-postinstall": "^0.3.0" - }, - "funding": { - "url": "https://opencollective.com/unrs-resolver" - }, - "optionalDependencies": { - "@unrs/resolver-binding-android-arm-eabi": "1.11.1", - "@unrs/resolver-binding-android-arm64": "1.11.1", - "@unrs/resolver-binding-darwin-arm64": "1.11.1", - "@unrs/resolver-binding-darwin-x64": "1.11.1", - "@unrs/resolver-binding-freebsd-x64": "1.11.1", - "@unrs/resolver-binding-linux-arm-gnueabihf": "1.11.1", - "@unrs/resolver-binding-linux-arm-musleabihf": "1.11.1", - "@unrs/resolver-binding-linux-arm64-gnu": "1.11.1", - "@unrs/resolver-binding-linux-arm64-musl": "1.11.1", - "@unrs/resolver-binding-linux-ppc64-gnu": "1.11.1", - "@unrs/resolver-binding-linux-riscv64-gnu": "1.11.1", - "@unrs/resolver-binding-linux-riscv64-musl": "1.11.1", - "@unrs/resolver-binding-linux-s390x-gnu": "1.11.1", - "@unrs/resolver-binding-linux-x64-gnu": "1.11.1", - "@unrs/resolver-binding-linux-x64-musl": "1.11.1", - "@unrs/resolver-binding-wasm32-wasi": "1.11.1", - "@unrs/resolver-binding-win32-arm64-msvc": "1.11.1", - "@unrs/resolver-binding-win32-ia32-msvc": "1.11.1", - "@unrs/resolver-binding-win32-x64-msvc": "1.11.1" - } - }, - "node_modules/update-browserslist-db": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", - "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", - "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.1" - }, - "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, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/which-boxed-primitive": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", - "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", - "dev": true, - "dependencies": { - "is-bigint": "^1.1.0", - "is-boolean-object": "^1.2.1", - "is-number-object": "^1.1.1", - "is-string": "^1.1.1", - "is-symbol": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-builtin-type": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", - "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.2", - "function.prototype.name": "^1.1.6", - "has-tostringtag": "^1.0.2", - "is-async-function": "^2.0.0", - "is-date-object": "^1.1.0", - "is-finalizationregistry": "^1.1.0", - "is-generator-function": "^1.0.10", - "is-regex": "^1.2.1", - "is-weakref": "^1.0.2", - "isarray": "^2.0.5", - "which-boxed-primitive": "^1.1.0", - "which-collection": "^1.0.2", - "which-typed-array": "^1.1.16" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-collection": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", - "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", - "dev": true, - "dependencies": { - "is-map": "^2.0.3", - "is-set": "^2.0.3", - "is-weakmap": "^2.0.2", - "is-weakset": "^2.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-typed-array": { - "version": "1.1.19", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", - "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", - "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "for-each": "^0.3.5", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - }, - "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" - } - }, - "node_modules/zod": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/zod/-/zod-4.3.5.tgz", - "integrity": "sha512-k7Nwx6vuWx1IJ9Bjuf4Zt1PEllcwe7cls3VNzm4CQ1/hgtFUK2bRNG3rvnpPUhFjmqJKAKtjV576KnUkHocg/g==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/colinhacks" - } - }, - "node_modules/zod-validation-error": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/zod-validation-error/-/zod-validation-error-4.0.2.tgz", - "integrity": "sha512-Q6/nZLe6jxuU80qb/4uJ4t5v2VEZ44lzQjPDhYJNztRQ4wyWc6VF3D3Kb/fAuPetZQnhS3hnajCf9CsWesghLQ==", - "dev": true, - "engines": { - "node": ">=18.0.0" - }, - "peerDependencies": { - "zod": "^3.25.0 || ^4.0.0" - } - }, - "node_modules/@next/swc-win32-x64-msvc": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-16.1.0.tgz", - "integrity": "sha512-Tr0j94MphimCCks+1rtYPzQFK+faJuhHWCegU9S9gDlgyOk8Y3kPmO64UcjyzZAlligeBtYZ/2bEyrKq0d2wqQ==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } } - } } diff --git a/src/app/(main)/buildpc/page.tsx b/src/app/(main)/buildpc/page.tsx index b36dc0e..3bf7fda 100644 --- a/src/app/(main)/buildpc/page.tsx +++ b/src/app/(main)/buildpc/page.tsx @@ -1,10 +1,13 @@ import BuildPc from "@/components/buildpc" import type { Metadata } from "next"; + export const metadata: Metadata = { title: "Xây Dựng Cấu Hình PC, Build PC Chuẩn Nhất✔️Giá Rẻ", description: "Xây dựng cấu hình máy tính PC chuyên nghiệp ✳️ máy tính đồ họa, máy tính làm việc giá rẻ ✳️ Build PC.", }; +import "@/styles/buildpc.css"; + export default function Home() { return( diff --git a/src/app/not-found.tsx b/src/app/not-found.tsx index 509490e..2742d4a 100644 --- a/src/app/not-found.tsx +++ b/src/app/not-found.tsx @@ -1,4 +1,9 @@ -import Link from "next/link" +import Link from "next/link"; +import type { Metadata } from "next"; +export const metadata: Metadata = { + title: "404 - Không tìm thấy trang | Hoàng Hà PC", + description: "hoanghapc", +}; export default function NotFound() { return ( diff --git a/src/components/buildpc/Buttons.tsx b/src/components/buildpc/Buttons.tsx new file mode 100644 index 0000000..0992183 --- /dev/null +++ b/src/components/buildpc/Buttons.tsx @@ -0,0 +1,21 @@ +export default function Buttons() { + return ( +
+ + + + + + + +
+ ) +} \ No newline at end of file diff --git a/src/components/buildpc/Content.tsx b/src/components/buildpc/Content.tsx new file mode 100644 index 0000000..2a1d3a6 --- /dev/null +++ b/src/components/buildpc/Content.tsx @@ -0,0 +1,59 @@ +'use client'; + +import { useState, useEffect, useRef } from "react"; + +export default function Content() { + const contentRef = useRef(null); + const containerRef = useRef(null); + + const [isOverflow, setIsOverflow] = useState(false); + const [expanded, setExpanded] = useState(false); + + useEffect(() => { + if (contentRef.current) { + if (contentRef.current.scrollHeight > 700) { + setIsOverflow(true); + } + } + }, []); + + const handleCollapse = () => { + setExpanded(false); + + containerRef.current?.scrollIntoView({ + behavior: 'smooth', + block: 'start', + }); + }; + + return ( +
+
+
+

Trong thời đại công nghệ bùng nổ, máy tính đã trở thành công cụ không thể thiếu trong học tập, làm việc và giải trí. Nếu như trước đây người dùng thường chọn mua sẵn các dòng máy đồng bộ, thì ngày nay, xu hướng " Build PC" - tự xây dựng cấu hình máy tính lại đang được ưa chuộng mạnh mẽ.

Vậy Build PC là gì? Vì sao ngày càng nhiều người chọn tự lắp ráp thay vì mua sẵn? Và làm thế nào để xây dựng cấu hình máy tính phù hợp với nhu cầu mà vẫn tiết kiệm chi phí tối đa?

Bài viết này sẽ giúp bạn hiểu rõ toàn bộ quy trình build PC từ A - Z , đồng thời giới thiệu đến bạn công cụ "Xây dựng cấu hình" thông minh tạiHoàng Hà PC - nơi hàng nghìn khách hàng đã lựa chọn để tạo nên bộ máy “chuẩn hiệu năng, đúng nhu cầu, đúng giá”.

I. Build PC là gì?

Hiểu một cách đơn giản, Build PC là việc bạn tự chọn từng linh kiện phần cứng để lắp ráp thành một bộ máy tính hoàn chỉnh.

Thay vì mua một chiếc PC đồng bộ được hãng sản xuất sẵn (với cấu hình cố định), người dùng chủ động lựa chọn CPU, mainboard, RAM, VGA, SSD, nguồn, vỏ case… theo nhu cầu và ngân sách của riêng mình.

Điểm đặc biệt của việc Build PC nằm ở sự linh hoạt và cá nhân hóa. Mỗi người có một mục đích sử dụng khác nhau: học sinh cần máy ổn định, tiết kiệm; designer cần đồ họa mạnh; game thủ cần FPS cao; kỹ sư cần hiệu năng render vượt trội. Build PC cho phép bạn tạo ra cấu hình chính xác nhất cho từng nhu cầu ấy.

title

So sánh Build PC và Mua PC đồng bộ

Tiêu chíBuild PCPC đồng bộ
Tùy biến cấu hìnhRất linh hoạt - chọn linh kiện theo ý muốnGiới hạn theo nhà sản xuất
Giá thànhTối ưu hơn, có thể tự cân đối ngân sáchThường cao hơn do chi phí thương hiệu
Bảo hànhRiêng từng linh kiện, dễ thay thếTheo máy, khó nâng cấp
Trải nghiệmCá nhân hóa, độc đáoCố định, ít tùy chỉnh

Vì vậy, Build PC không chỉ là cách “mua máy tính thông minh hơn”, mà còn thể hiện gu công nghệ và sự am hiểu phần cứng của người dùng.

II. Các linh kiện quan trọng khi Build PC

Để build được một bộ máy tính mạnh mẽ, bạn cần nắm rõ vai trò của từng linh kiện.

1. CPU - Bộ não của máy tính

CPU hay còn gọi là bộ vi xử lý trung tâm, được ví như “bộ não” của máy tính, chịu trách nhiệm xử lý mọi tác vụ - từ những công việc cơ bản như lướt web, soạn thảo văn bản cho đến các nhiệm vụ phức tạp như dựng hình 3D, render video, hay phân tích dữ liệu lớn. Chính vì vậy, khi build PC, việc lựa chọn CPU phù hợp đóng vai trò cực kỳ quan trọng để đảm bảo hệ thống hoạt động ổn định, mạnh mẽ và hiệu quả nhất.

+
Yếu tốMô tả
GPU (Graphics Processing Unit)Bộ xử lý đồ họa, đảm nhận nhiệm vụ xử lý hình ảnh, video, game và các tác vụ liên quan đến hiển thị. Đây là thành phần quyết định sức mạnh đồ họa của máy tính.
VRAM (Video RAM)Bộ nhớ chuyên dụng của GPU, dùng để lưu trữ dữ liệu hình ảnh và texture trong quá trình xử lý. Dung lượng VRAM càng lớn, trải nghiệm chơi game và làm đồ họa ở độ phân giải cao càng mượt mà.
Xung nhịp GPUThể hiện tốc độ hoạt động của GPU, tính bằng MHz hoặc GHz. Xung nhịp càng cao thì khả năng xử lý khung hình và hiệu suất tổng thể của card đồ họa càng mạnh.
Số nhân CUDA (NVIDIA) / Stream Processors (AMD)Các lõi xử lý song song bên trong GPU, chịu trách nhiệm thực hiện các phép tính đồ họa phức tạp. Số lượng lõi càng nhiều, hiệu năng xử lý hình ảnh và tính toán càng tốt.
Hỗ trợ công nghệCác công nghệ tích hợp như Ray Tracing, DLSS (NVIDIA) hoặc FSR (AMD) giúp cải thiện chất lượng hình ảnh, tăng tốc độ khung hình và tối ưu trải nghiệm game.
Băng thông bộ nhớThể hiện tốc độ trao đổi dữ liệu giữa GPU và VRAM, tính bằng GB/s. Băng thông càng cao thì khả năng xử lý đồ họa nặng, đặc biệt ở độ phân giải 4K, càng hiệu quả.
TDP (Thermal Design Power)Công suất nhiệt mà GPU tiêu thụ (đơn vị: Watt). Thông số này ảnh hưởng trực tiếp đến khả năng tản nhiệt của hệ thống và yêu cầu công suất nguồn điện (PSU) tương ứng.

title

Khi chọn CPU, người dùng nên chú ý đến ba yếu tố chính: số lõi (core), số luồng (thread) và xung nhịp (clock speed). Trong đó:

  • Số lõi và số luồng quyết định khả năng xử lý đa nhiệm cũng như hiệu suất trong các ứng dụng nặng như render, thiết kế hay lập trình.
  • Xung nhịp lại ảnh hưởng trực tiếp đến hiệu năng đơn nhân, phù hợp hơn cho chơi game hoặc các tác vụ nhẹ.

Hiện nay, thị trường CPU chủ yếu được chi phối bởi hai “ông lớn” là Intel và AMD.

  • Nếu mục tiêu của bạn là chơi game, hãy ưu tiên các dòng Intel Core i5/i7 hoặc AMD Ryzen 5/7 để đạt được mức hiệu năng - giá thành hợp lý.
  • Còn nếu bạn làm render, edit video hoặc thiết kế đồ họa 3D chuyên sâu, nên chọn các CPU cao cấp như Ryzen 9 hoặc Intel Core i9. CPU càng mạnh, khả năng xử lý tác vụ càng nhanh và mượt mà, giúp tiết kiệm đáng kể thời gian làm việc.

2. Mainboard - Bo mạch chủ

Nếu CPU được ví như “bộ não” của máy tính, thì mainboard (bo mạch chủ) chính là “khung xương” của toàn hệ thống. Bo mạch chủ có nhiệm vụ kết nối và phối hợp hoạt động giữa các linh kiện như CPU, RAM, GPU, ổ cứng,… để tạo nên một hệ thống vận hành thống nhất và ổn định.

Yếu tốMô tả
SocketKhe cắm dành cho CPU, quyết định loại vi xử lý có thể tương thích với mainboard. Mỗi dòng CPU thường chỉ hỗ trợ một loại socket nhất định.
ChipsetBộ điều khiển trung tâm của mainboard, đảm nhiệm việc quản lý và kết nối giữa CPU, RAM, GPU cùng các thiết bị ngoại vi khác, ảnh hưởng trực tiếp đến hiệu năng và tính năng hỗ trợ.
Khe cắm RAMVị trí gắn bộ nhớ RAM, quyết định số lượng thanh RAM được lắp và tốc độ hoạt động của hệ thống. Số khe và chuẩn RAM (DDR4, DDR5...) tùy thuộc vào từng loại mainboard.
Khe cắm PCIeCung cấp giao tiếp tốc độ cao để gắn các thiết bị mở rộng như card đồ họa, card mạng, SSD PCIe hoặc các card bổ trợ khác.
Cổng kết nốiBao gồm các cổng như USB, HDMI, LAN, Audio... dùng để kết nối mainboard với thiết bị ngoại vi, màn hình hoặc thiết bị lưu trữ bên ngoài.
VRM (Voltage Regulator Module)Mạch điều chỉnh và ổn định điện áp cấp cho CPU, giúp hệ thống hoạt động bền bỉ, tránh hiện tượng sụt áp hoặc quá nhiệt khi tải nặng.
BIOSPhần mềm cơ bản tích hợp trên mainboard, có nhiệm vụ khởi động hệ thống, nhận diện phần cứng và cho phép người dùng thiết lập cấu hình hoặc cập nhật firmware.

title

Khi build PC, người dùng có thể lựa chọn nhiều kích thước mainboard khác nhau như ATX, Micro-ATX, Mini-ITX,… tùy thuộc vào loại thùng máy và mục đích sử dụng.

Bên cạnh kích thước, hai yếu tố socket và chipset cũng đặc biệt quan trọng.

  • Socket quyết định khả năng tương thích với CPU,
  • Còn chipset ảnh hưởng đến tính năng mở rộng của bo mạch chủ, chẳng hạn như số lượng cổng USB, khe PCIe, hay khả năng hỗ trợ ép xung.

Việc lựa chọn đúng mainboard sẽ giúp tận dụng tối đa sức mạnh của CPU và đảm bảo hệ thống hoạt động bền bỉ, nâng cấp dễ dàng trong tương lai.

3. RAM - Bộ nhớ tạm

RAM (Random Access Memory) là bộ nhớ truy cập ngẫu nhiên của máy tính, đóng vai trò lưu trữ tạm thời các dữ liệu mà CPU đang xử lý, giúp hệ thống phản hồi nhanh và vận hành mượt mà khi chạy nhiều ứng dụng cùng lúc. Đây là một trong những linh kiện quan trọng nhất trong mọi cấu hình PC, ảnh hưởng trực tiếp đến khả năng đa nhiệm, tốc độ khởi chạy phần mềm và hiệu suất chơi game.

Nhiệm vụ chính của RAM là tạo ra không gian lưu trữ tạm thời cho các tiến trình đang hoạt động, giúp CPU truy cập và xử lý dữ liệu nhanh hơn. Nhờ đó, máy tính có thể hoạt động ổn định, giảm thiểu tình trạng giật lag hoặc treo máy khi thiếu bộ nhớ.

Yếu tốMô tả
Dung lượng (GB)Lượng dữ liệu mà RAM có thể lưu trữ và xử lý tạm thời tại một thời điểm. Dung lượng càng lớn thì khả năng đa nhiệm và độ mượt tổng thể của hệ thống càng cao, đặc biệt khi chạy nhiều ứng dụng cùng lúc.
Chuẩn RAM (DDR4/DDR5)Thế hệ công nghệ RAM xác định kiểu khe cắm và giao thức hoạt động. Mỗi mainboard và CPU chỉ hỗ trợ một số chuẩn RAM nhất định, vì vậy cần đảm bảo tương thích khi lựa chọn.
Tốc độ (MHz)Biểu thị tần số hoạt động của RAM, cho biết tốc độ truyền dữ liệu giữa RAM và CPU. RAM có xung nhịp cao (MHz lớn) sẽ mang lại băng thông rộng hơn và hiệu năng xử lý tốt hơn.
Độ trễ (CL - CAS Latency)Thời gian chờ (tính theo chu kỳ xung nhịp) trước khi RAM phản hồi lệnh truy xuất dữ liệu. Chỉ số CL càng thấp, thời gian phản hồi càng nhanh, giúp cải thiện hiệu năng ở cùng mức xung nhịp.
Kênh bộ nhớ (Dual Channel)Cơ chế hoạt động song song của hai thanh RAM cùng dung lượng và tốc độ, cho phép truyền dữ liệu qua hai đường dẫn cùng lúc. Nhờ đó, băng thông tăng gấp đôi so với khi chỉ dùng một thanh RAM đơn.

title

Khi chọn RAM, người dùng cần quan tâm đến hai yếu tố chính: dung lượng và tốc độ bus (xung nhịp RAM).

  • Dung lượng RAM ảnh hưởng trực tiếp đến khả năng xử lý đa nhiệm. Ở thời điểm hiện tại, 8GB được xem là mức tối thiểu để máy tính có thể đáp ứng nhu cầu cơ bản như lướt web, làm việc văn phòng hoặc xem phim. Tuy nhiên, để đảm bảo hiệu năng tối ưu cho gaming, đồ họa hoặc làm việc chuyên sâu, mức 16GB - 32GB là lựa chọn lý tưởng.
  • Bên cạnh dung lượng, tốc độ RAM (bus RAM) cũng ảnh hưởng đáng kể đến trải nghiệm sử dụng. Bus RAM càng cao, tốc độ trao đổi dữ liệu giữa CPU và bộ nhớ càng nhanh, giúp cải thiện hiệu suất tổng thể. Đặc biệt, với RAM DDR5, mức bus 5600-6000 MT/s hiện được xem là lựa chọn cân bằng giữa hiệu năng và chi phí, phù hợp cho cả game thủ lẫn người dùng làm việc chuyên nghiệp.

Một bộ RAM có dung lượng đủ lớn và tốc độ bus cao sẽ giúp hệ thống vận hành ổn định, đa nhiệm hiệu quả và đạt hiệu năng tối đa trong mọi tác vụ.

4. VGA - Card đồ họa

Card màn hình, hay còn gọi là VGA , là linh kiện chuyên xử lý đồ họa và hình ảnh, với GPU (Graphics Processing Unit) đóng vai trò trung tâm. GPU là bộ xử lý có khả năng thực hiện đồng thời nhiều tác vụ, giúp tăng tốc độ hiển thị và mang lại khung hình mượt mà trong quá trình sử dụng. Đi kèm với đó là bộ nhớ VRAM , nơi lưu trữ tạm thời dữ liệu hình ảnh; dung lượng VRAM càng cao thì khả năng xử lý hình ảnh có độ phân giải lớn càng hiệu quả.

Hiện nay, VGA được chia thành hai loại chính: card tích hợpcard rời . Trong khi card tích hợp nằm sẵn trong CPU và chỉ đáp ứng các tác vụ cơ bản, thì card rời lại vượt trội hơn hẳn về hiệu năng nhờ sở hữu nhiều lõi xử lý, xung nhịp cao, băng thông bộ nhớ lớn và trình điều khiển (driver) được tối ưu. Chính vì vậy, card rời là lựa chọn lý tưởng cho những nhu cầu nặng như chơi game, dựng hình 3D, render video hay xử lý AI .

Yếu tốMô tả
GPU (Graphics Processing Unit)Bộ xử lý đồ họa - thành phần chính chịu trách nhiệm xử lý hình ảnh, video, trò chơi và các tác vụ liên quan đến hiển thị. GPU càng mạnh thì khả năng hiển thị và hiệu suất xử lý đồ họa càng cao.
VRAM (Video RAM)Bộ nhớ chuyên dụng của GPU, dùng để lưu trữ dữ liệu hình ảnh, texture và khung hình tạm thời. Dung lượng VRAM càng lớn, hiệu suất chơi game và làm việc ở độ phân giải cao càng mượt mà.
Xung nhịp GPUTốc độ hoạt động của GPU, tính bằng MHz hoặc GHz. Xung nhịp càng cao thì GPU xử lý khung hình và dữ liệu đồ họa càng nhanh, mang lại hiệu năng ổn định hơn.
Số nhân CUDA (NVIDIA) / Stream Processors (AMD)Các lõi xử lý song song bên trong GPU, đảm nhiệm việc tính toán và dựng hình. Số lượng lõi càng nhiều thì sức mạnh xử lý đồ họa và hiệu suất tổng thể càng lớn.
Hỗ trợ công nghệBao gồm các tính năng tiên tiến như Ray Tracing, DLSS (NVIDIA) hoặc FSR (AMD), giúp nâng cao chất lượng hình ảnh, cải thiện tốc độ khung hình và tối ưu trải nghiệm thị giác.
Băng thông bộ nhớThể hiện tốc độ truyền tải dữ liệu giữa GPU và VRAM, đơn vị tính bằng GB/s. Băng thông càng cao, GPU càng dễ dàng xử lý game nặng hoặc đồ họa 4K mà không bị nghẽn dữ liệu.
TDP (Thermal Design Power)Mức công suất nhiệt mà GPU tiêu thụ, tính bằng watt (W). Thông số này ảnh hưởng đến khả năng tản nhiệt, mức tiêu thụ điện và yêu cầu lựa chọn bộ nguồn (PSU) phù hợp.

title

Thông thường, card màn hình (VGA) được gắn vào khe PCIe x16 đầu tiên trên mainboard để đảm bảo đạt hiệu suất tối đa. Khi lựa chọn và lắp đặt VGA, người dùng cần chú ý đến công suất bộ nguồn (PSU) cũng như kích thước không gian trong case, bởi đây là linh kiện tiêu thụ nhiều điện năng và tỏa nhiệt lớn trong quá trình hoạt động.

Đối với nhu cầu văn phòng hoặc các tác vụ cơ bản, người dùng có thể tận dụng GPU tích hợp (iGPU) trong CPU để tiết kiệm chi phí. Tuy nhiên, nếu cần hiệu năng đồ họa mạnh mẽ hơn, thị trường hiện nay chủ yếu xoay quanh hai dòng card phổ biến là NVIDIA GeForce và AMD Radeon, bên cạnh đó Intel Arc cũng đang dần mở rộng thị phần. Trong số này, NVIDIA GeForce vẫn là thương hiệu phổ biến và được ưa chuộng nhất nhờ hiệu năng ổn định, hỗ trợ công nghệ tiên tiến và hệ sinh thái phần mềm tối ưu.

5. Ổ cứng - Lưu trữ dữ liệu

Ổ cứng (storage) là nơi lưu trữ toàn bộ dữ liệu của máy tính, bao gồm hệ điều hành, phần mềm, ứng dụng và tệp cá nhân. Đây là một trong những linh kiện không thể thiếu khi tự build PC, quyết định trực tiếp đến tốc độ khởi động, hiệu suất truy xuất dữ liệu và khả năng lưu trữ của hệ thống.

Yếu tốMô tả
Loại ổ cứngPhân loại thiết bị lưu trữ, gồm SSD (Solid State Drive) và HDD (Hard Disk Drive). Loại ổ cứng ảnh hưởng trực tiếp đến tốc độ truy xuất dữ liệu, độ bền và hiệu suất tổng thể của hệ thống.
Dung lượng (GB/TB)Dung lượng lưu trữ của ổ cứng, dùng để chứa hệ điều hành, phần mềm, trò chơi và dữ liệu cá nhân. Dung lượng càng lớn, khả năng lưu trữ càng thoải mái và linh hoạt.
Tốc độ đọc/ghi (MB/s)Thể hiện tốc độ xử lý và truyền tải dữ liệu của ổ cứng. Tốc độ càng cao, thời gian khởi động máy, mở ứng dụng và truyền file càng nhanh chóng.
TBW (Total Bytes Written)Chỉ số đo độ bền của SSD, thể hiện tổng lượng dữ liệu có thể ghi lên ổ trong suốt vòng đời trước khi hiệu năng suy giảm. TBW càng cao, tuổi thọ ổ SSD càng lâu.

title

Hiện nay, ổ cứng được chia thành hai loại chính là HDD (Hard Disk Drive) và SSD (Solid State Drive), với nhiều mức dung lượng khác nhau như 128GB, 256GB, 512GB, 1TB, 2TB,..., phù hợp cho từng nhu cầu và ngân sách.

  • Ổ cứng SSD có tốc độ đọc/ghi vượt trội, độ bền cao và hoạt động êm ái, thường được ưu tiên cài đặt hệ điều hành, phần mềm và ứng dụng thường dùng. Nhờ khả năng truy xuất dữ liệu nhanh, SSD giúp máy khởi động nhanh hơn, chuyển tác vụ mượt mà hơn và nâng cao trải nghiệm tổng thể.
  • Ổ cứng HDD, tuy tốc độ chậm hơn, nhưng lại có dung lượng lớn và giá thành rẻ hơn, rất phù hợp để lưu trữ dữ liệu cá nhân, phim ảnh, tài liệu hoặc backup. Với những ai muốn xây dựng cấu hình PC tiết kiệm chi phí, HDD vẫn là lựa chọn hợp lý nhờ hiệu quả kinh tế cao.

Hiện nay, người dùng thường kết hợp SSD và HDD để vừa có tốc độ cao, vừa có dung lượng lưu trữ lớn, tối ưu cả hiệu năng lẫn chi phí.

6. PSU - Nguồn máy tính

Nguồn máy tính (PSU - Power Supply Unit) là linh kiện chịu trách nhiệm cung cấp và phân phối điện năng cho toàn bộ hệ thống PC. Đây được xem là “trái tim năng lượng” của máy tính, giúp duy trì hoạt động ổn định cho các linh kiện như CPU, GPU, bo mạch chủ, ổ cứng và quạt tản nhiệt. Không chỉ vậy, PSU còn đóng vai trò bảo vệ an toàn phần cứng, tránh các rủi ro do dao động điện áp, quá tải hoặc chập điện.

Yếu tốMô tả
Công suất (W)Mức điện năng mà bộ nguồn (PSU ) có thể cung cấp cho toàn hệ thống. Công suất càng cao thì khả năng đáp ứng linh kiện, đặc biệt là CPU và GPU mạnh , càng tốt.
Hiệu suất (80 Plus)Chứng nhận đánh giá khả năng tiết kiệm điện năng của PSU. Hiệu suất càng cao (Bronze, Gold, Platinum...), lượng điện hao phí càng ít, giúp hệ thống hoạt động ổn định và tiết kiệm hơn.
Chuẩn kết nốiBao gồm các đầu cắm nguồn dành cho mainboard, CPU, VGA và ổ cứng. Việc đảm bảo đầy đủ và tương thích các đầu cắm giúp hệ thống vận hành an toàn, ổn định.
Thương hiệu &bảo hànhThể hiện uy tín và độ tin cậy của sản phẩm. Bộ nguồn đến từ thương hiệu nổi tiếng, kèm thời gian bảo hành dài , sẽ mang lại sự an tâm trong quá trình sử dụng lâu dài.
Độ ồnMức tiếng quạt phát ra khi PSU hoạt động. PSU có quạt êm, công nghệ tản nhiệt tốt sẽ giúp giảm tiếng ồn, mang lại trải nghiệm dễ chịu hơn.
Thiết kế dây (Modular)Kiểu thiết kế dây nguồn, gồm dây rời (Modular)dây liền (Non-Modular) . Loại dây rời giúp quản lý cáp gọn gàng , dễ lắp đặt và tối ưu luồng gió trong case.

title

Khi build PC, việc lựa chọn công suất nguồn cần được tính toán dựa trên tổng mức tiêu thụ điện của toàn bộ linh kiện. Thông thường, các dàn máy phổ thông hoặc gaming tầm trung sẽ phù hợp với nguồn 500W - 650W, trong khi các cấu hình cao cấp sử dụng CPU và GPU mạnh mẽ nên chọn nguồn từ 750W - 850W hoặc cao hơn để đảm bảo hiệu năng ổn định và tuổi thọ lâu dài.

Bên cạnh công suất, chứng nhận hiệu suất năng lượng 80 Plus cũng là yếu tố quan trọng cần lưu ý. Các cấp độ như 80 Plus Bronze, Silver, Gold, Platinum thể hiện khả năng chuyển đổi điện năng hiệu quả, giúp giảm hao phí điện, vận hành êm ái và ổn định hơn.

7. Case - Vỏ cây máy tính

Case máy tính được ví như “lớp vỏ bảo vệ” của PC, không chỉ có nhiệm vụ che chắn và bảo vệ linh kiện bên trong mà còn ảnh hưởng trực tiếp đến hiệu suất hoạt động tổng thể của hệ thống. Một chiếc case chất lượng giúp tản nhiệt hiệu quả, duy trì luồng khí lưu thông tối ưu và mang lại vẻ ngoài thẩm mỹ cho bộ máy. Vì vậy, việc lựa chọn case phù hợp khi build PC không chỉ đảm bảo hiệu năng ổn định và độ bền cao, mà còn tạo nên không gian làm việc hoặc giải trí hài hòa, chuyên nghiệp hơn.

Yếu tốMô tả
Kích thước (Form Factor)Kích cỡ tổng thể của case như ATX, Micro-ATX (mATX), Mini-ITX, quyết định loại mainboard và số lượng linh kiện có thể lắp đặt bên trong.
Khả năng hỗ trợ tản nhiệtKhông gian và vị trí gắn quạt, radiator hoặc hệ thống tản nhiệt khí/nước, giúp linh kiện được làm mát hiệu quả và duy trì hiệu suất ổn định.
Khả năng hỗ trợ VGAQuy định chiều dài và số khe mở rộng (slot) mà case có thể chứa, đảm bảo vừa vặn với card đồ họa và không ảnh hưởng đến luồng gió bên trong.
Luồng khí (Airflow)Thể hiện khả năng lưu thông không khí trong case; airflow càng tốt thì nhiệt độ hệ thống càng thấp, giúp các linh kiện hoạt động ổn định và bền bỉ hơn.
Chất liệuĐược làm từ thép, nhôm, kính cường lực hoặc nhựa cao cấp, ảnh hưởng đến độ bền, trọng lượng và trải nghiệm sử dụng tổng thể.
Thẩm mỹBao gồm thiết kế, màu sắc, hệ thống đèn LED, mặt kính trong suốt, tạo điểm nhấn về phong cách và cá tính cho bộ PC, đặc biệt với người yêu thích dàn máy đẹp mắt.

title

Nên ưu tiên chọn case có thiết kế thoáng khí, được trang bị lưới lọc bụi và không gian đi dây gọn gàng, giúp việc lắp đặt và bảo trì trở nên dễ dàng hơn. Tùy theo nhu cầu sử dụng, có thể lựa chọn case nhỏ gọn cho máy văn phòng hoặc case rộng rãi cho PC gaming và workstation cần nhiều linh kiện. Ngoài ra, case có khả năng mở rộng linh hoạt sẽ là lựa chọn thông minh, giúp người dùng dễ dàng nâng cấp phần cứng trong tương lai mà không cần thay toàn bộ vỏ máy.

8. Tản nhiệt - Giữ cho hệ thống luôn mát mẻ

Tản nhiệt đóng vai trò quan trọng trong việc làm mát CPU, GPU và các linh kiện trong suốt quá trình hoạt động, giúp ngăn chặn tình trạng quá nhiệt, duy trì xung nhịp ổn định và giảm độ ồn của hệ thống. Một giải pháp làm mát hiệu quả không chỉ đảm bảo hiệu năng được duy trì lâu dài mà còn tăng tuổi thọ linh kiện, đặc biệt cần thiết đối với các bộ PC thường xuyên xử lý tác vụ nặng như chơi game, render đồ họa hoặc chạy AI.

Yếu tốMô tả
Tản nhiệt CPUThiết bị chuyên dụng giúp làm mát cho bộ vi xử lý (CPU), giữ nhiệt độ ổn định để CPU hoạt động hiệu quả và kéo dài tuổi thọ. Có hai loại phổ biến là tản khí và tản nước.
Tản nhiệt VGAHệ thống làm mát dành cho card đồ họa (GPU), giúp duy trì hiệu năng ổn định và ngăn hiện tượng quá nhiệt khi chơi game, render hoặc làm đồ họa nặng.
Quạt caseQuạt gắn trong thùng máy (case), có nhiệm vụ luân chuyển không khí giữa trong và ngoài hệ thống, hỗ trợ làm mát cho toàn bộ linh kiện bên trong.
Luồng khí (Airflow)Thể hiện hướng và tốc độ di chuyển của không khí trong case. Luồng khí được thiết kế hợp lý sẽ giúp tản nhiệt hiệu quả, giữ cho hệ thống hoạt động mát mẻ và ổn định hơn.

title

Khi tự build PC, người dùng có thể lựa chọn giữa hai loại tản nhiệt phổ biến: tản khí và tản nước.

  • Tản nhiệt khí có giá thành hợp lý, dễ lắp đặt và bảo trì đơn giản, phù hợp cho hầu hết các cấu hình phổ thông và gaming.
  • Tản nhiệt nước, tuy chi phí cao hơn, nhưng lại mang đến hiệu quả làm mát vượt trội, giúp CPU hoạt động êm ái và ổn định hơn trong các cấu hình hiệu năng cao hoặc PC cao cấp có yêu cầu khắt khe về nhiệt độ.

Tùy theo ngân sách, không gian case và nhu cầu sử dụng, người dùng nên chọn giải pháp tản nhiệt phù hợp để đảm bảo hiệu năng và độ bền tối ưu cho toàn bộ hệ thống.

9. Màn hình máy tính

Màn hình máy tính là thiết bị ngoại vi không thể thiếu trong bất kỳ bộ PC để bàn nào. Đây là nơi hiển thị toàn bộ hình ảnh, màu sắc và nội dung công việc, đồng thời ảnh hưởng trực tiếp đến trải nghiệm sử dụng của người dùng. Hiện nay, màn hình có đa dạng kích thước, độ phân giải và tần số quét, giúp người dùng dễ dàng lựa chọn mẫu phù hợp khi tự build PC, dù là cấu hình giá rẻ hay cao cấp.

title

Đối với PC gaming

Khi build máy tính để chơi game, yếu tố tần số quét (Refresh Rate) là tiêu chí quan trọng hàng đầu.

  • Với game thủ phổ thông, màn hình có tần số quét 120Hz - 144Hz đã mang lại trải nghiệm hình ảnh mượt mà, phản hồi nhanh, đủ để thỏa mãn hầu hết nhu cầu giải trí.
  • Đối với game thủ chuyên nghiệp hoặc eSports, nên lựa chọn các mẫu màn hình 240Hz - 360Hz để đảm bảo độ trễ thấp và hình ảnh siêu mượt, hỗ trợ tối đa trong các tựa game tốc độ cao.

Đối với PC đồ họa - thiết kế

Nếu bạn build máy tính phục vụ thiết kế, chỉnh ảnh, dựng video hay các công việc liên quan đến đồ họa chuyên nghiệp, hãy ưu tiên độ phân giải và độ chính xác màu sắc.

  • Màn hình nên có độ phân giải từ 2K đến 4K để hiển thị hình ảnh sắc nét, chi tiết cao.
  • Các thông số như Delta E <2 và độ bao phủ màu rộng trong các không gian màu sRGB, DCI-P3 hoặc AdobeRGB sẽ đảm bảo màu sắc trung thực, đồng nhất, phù hợp cho công việc sáng tạo.

Việc chọn màn hình đúng nhu cầu không chỉ giúp tận dụng tối đa hiệu năng của dàn PC, mà còn nâng cao trải nghiệm hình ảnh, dù bạn là game thủ, designer hay người dùng phổ thông.

10. Thiết bị ngoại vi

Bên cạnh các linh kiện phần cứng bên trong, một bộ PC hoàn chỉnh còn cần được trang bị các thiết bị ngoại vi để có thể vận hành và sử dụng hiệu quả. Đây là những phụ kiện đóng vai trò kết nối và tương tác trực tiếp với người dùng, giúp trải nghiệm làm việc, học tập hay giải trí trở nên thuận tiện và trọn vẹn hơn.

Dưới đây là một số thiết bị ngoại vi cơ bản mà bạn nên chuẩn bị khi tự build máy tính:

Bàn phím

Nếu màn hình đảm nhiệm vai trò hiển thị hình ảnh, thì bàn phím chính là phương tiện nhập liệu và điều khiển quan trọng của người dùng. Không chỉ đơn thuần là công cụ nhập dữ liệu, bàn phím còn ảnh hưởng trực tiếp đến tốc độ thao tác, cảm giác sử dụng và hiệu suất làm việc hàng ngày. Trải nghiệm gõ phím, độ phản hồi và bố cục phím hợp lý sẽ mang lại sự thoải mái, giúp người dùng làm việc hiệu quả hơn.

Khi lựa chọn bàn phím, cần cân nhắc nhiều yếu tố như kích thước và bố cục (Full-size, TKL, 75%), loại switch (mang lại cảm giác gõ khác nhau), chất liệu keycap (PBT hoặc ABS) và kiểu kết nối (có dây hoặc không dây). Ngoài ra, các tính năng nâng cao như anti-ghosting, n-key rollover cùng độ hoàn thiện chắc chắn sẽ giúp tăng độ bền, sự ổn định và mang lại trải nghiệm gõ tối ưu hơn.

title

Chuột

Chuột máy tính là thiết bị giúp người dùng tương tác trực tiếp với hệ thống, hỗ trợ thực hiện mọi thao tác điều khiển một cách nhanh chóng và chính xác. Ngày nay, các dòng chuột văn phòng được thiết kế chú trọng vào sự thoải mái và ergonomics, phù hợp cho việc sử dụng trong thời gian dài, trong khi chuột gaming lại được tối ưu về độ nhạy (DPI) và tốc độ phản hồi, mang đến lợi thế trong các tựa game cạnh tranh. Bên cạnh đó, nhiều mẫu chuột hiện đại còn áp dụng thiết kế công thái học, giúp giảm mỏi tay, nâng cao hiệu suất làm việc và mang lại trải nghiệm sử dụng tự nhiên hơn.

title

Tai nghe hoặc loa

Âm thanh là yếu tố quan trọng giúp hoàn thiện trải nghiệm sử dụng PC. Trong đó, tai nghe là lựa chọn lý tưởng cho những ai cần sự tập trung và không gian riêng tư, phù hợp khi làm việc, học tập hoặc giải trí cá nhân. Ngược lại, loa lại là giải pháp thích hợp cho không gian rộng, giúp chia sẻ trải nghiệm âm thanh và hình ảnh với nhiều người, mang đến cảm giác sống động và kết nối hơn.

title

Webcam

Webcam ngày nay đã trở thành phụ kiện không thể thiếu cho nhu cầu học tập, họp trực tuyến và sáng tạo nội dung, mang lại chất lượng hình ảnh sắc nét hơn hẳn so với camera tích hợp trên laptop. Nhờ các tính năng như tự động lấy nét và xử lý ánh sáng thông minh, webcam có thể đảm bảo hình ảnh luôn sáng rõ và tự nhiên trong nhiều điều kiện môi trường khác nhau.

Hiện tại, độ phân giải 1080p được xem là tiêu chuẩn phổ thông cho hầu hết người dùng. Tuy nhiên, với streamer hoặc nhà sáng tạo nội dung chuyên nghiệp, nên ưu tiên webcam 4K hỗ trợ HDR và tốc độ khung hình 60fps để có hình ảnh mượt mà và chi tiết hơn. Ngoài ra, các yếu tố như góc nhìn rộng, khả năng autofocus nhanh và micro khử ồn tích hợp cũng là những điểm đáng cân nhắc khi lựa chọn.

title

USB WiFi hoặc card mạng LAN

Kết nối mạng ổn định là yếu tố quan trọng giúp phát huy tối đa hiệu suất của PC, đặc biệt trong các tác vụ như chơi game online, tải dữ liệu dung lượng lớn hay làm việc từ xa. Trong đó, card LAN có dây luôn được đánh giá cao nhờ độ trễ thấp và tốc độ truyền tải ổn định nhất.

Trong trường hợp không thể sử dụng kết nối có dây, card Wi-Fi PCIe chuẩn Wi-Fi 6 hoặc Wi-Fi 6E là lựa chọn lý tưởng hơn so với USB Wi-Fi, nhờ ăng-ten lớn và khả năng bắt sóng mạnh hơn. Khi lựa chọn, người dùng nên chú ý đến chuẩn Wi-Fi hỗ trợ, băng tần 5GHz hoặc 6GHz, cùng độ ổn định của ping, để đảm bảo trải nghiệm mạng mượt mà và liền mạch.

Bộ lưu điện (UPS)

UPS (Uninterruptible Power Supply) đóng vai trò như tuyến bảo vệ cuối cùng cho hệ thống PC, giúp ngăn ngừa hư hại linh kiện và tránh mất dữ liệu khi xảy ra mất điện hoặc sụt áp đột ngột. Với các dàn PC hiệu năng cao và màn hình lớn, UPS là phụ kiện cần thiết để đảm bảo an toàn và ổn định cho toàn bộ hệ thống.

Khi lựa chọn UPS, người dùng nên ưu tiên thiết bị có tích hợp AVR (tự động ổn áp) và dạng sóng sin chuẩn để tương thích tốt với nguồn điện máy tính. Ngoài ra, cần tính toán công suất dư so với tổng tải của PC và màn hình, đồng thời chọn sản phẩm có phần mềm giám sát điện năng và pin dễ thay thế — giúp hệ thống vận hành bền bỉ, an toàn và đáng tin cậy hơn.

III. Cách Build PC đúng chuẩn (quy trình tại Hoàng Hà PC)

Tự build PC có thể khiến nhiều người bỡ ngỡ, nhưng với công cụ “Xây dựng cấu hình” tại Hoàng Hà PC , quá trình này trở nên cực kỳ dễ dàng, trực quan và thông minh.

Dưới đây là 5 bước chuẩn nhất để bạn có thể tự thiết kế bộ PC hoàn hảo :

Bước 1: Xác định nhu cầu sử dụng

Bạn cần PC để làm gì?

  • Học tập - văn phòng
  • Gaming
  • Dựng phim, thiết kế 3D
  • Render - AI - Server
    Mỗi mục đích sẽ cần cấu hình riêng biệt.

title

Bước 2: Lên cấu hình theo ngân sách

Truy cập trang:  https://hoanghapc.vn/buildpc

Tại đây, bạn có thể chọn linh kiện theo danh mục (CPU, RAM, VGA…) hoặc chọn cấu hình gợi ý sẵn nếu bạn chưa có kinh nghiệm.

Hệ thống sẽ tự động tính giá tổng , giúp bạn kiểm soát chi phí dễ dàng.

Bước 3: Kiểm tra tương thích linh kiện

Công cụ “Xây dựng cấu hình” tại Hoàng Hà PC sẽ tự động kiểm tra sự tương thích giữa CPU - Mainboard - RAM - PSU, đảm bảo không xảy ra xung đột.

Bước 4: Lắp ráp - Test hiệu năng

Sau khi hoàn thiện, đội ngũ kỹ thuật viên của Hoàng Hà PC sẽ lắp ráp, test stress, kiểm tra nhiệt độ và hiệu năng thực tế trước khi giao hàng.

Mỗi bộ PC được đảm bảo hoạt động ổn định và đạt hiệu suất tối đa .

Bước 5: Bảo hành &Hỗ trợ trọn đời

Mỗi linh kiện đều được bảo hành chính hãng. Ngoài ra, Hoàng Hà PC còn hỗ trợ tư vấn, nâng cấp, vệ sinh, test miễn phí trong suốt quá trình sử dụng.

IV. Cấu hình Build PC theo nhu cầu và phân khúc giá

title

Để lựa chọn cấu hình PC phù hợp , người dùng cần cân nhắc kỹ giữa mục đích sử dụngngân sách đầu tư . Dưới đây là bảng so sánh ưu - nhược điểm cùng mức giá tham khảo , được Phong Vũ tổng hợp , giúp bạn dễ dàng tìm ra cấu hình đáp ứng tốt nhất cho nhu cầu của mình:

Mục đích sử dụngƯu điểmNhược điểmKhoảng giá tham khảo
PC Văn phòng - Học tậpChi phí đầu tư thấp, sử dụng iGPU giúp tiết kiệm điện năng và gọn gàng.Hiệu năng đồ họa hạn chế, không phù hợp cho chơi game hoặc thiết kế nặng.Khoảng 7 - 12 triệu đồng , tùy cấu hình và thương hiệu bán lẻ.
Gaming eSports / FPS 1080pTỷ lệ hiệu năng/giá tốt, chơi mượt các tựa game phổ biến như Valorant, CS2, LMHT, linh kiện dễ tìm và dễ nâng cấp.Chưa tối ưu cho độ phân giải cao (2K/4K) hoặc stream nặng, có thể cần nâng cấp GPU trong tương lai.Từ 12 - 18 triệu đồng , thường gồm CPU Intel Core i5 kết hợp RTX 3060 hoặc RX 6600.
Gaming AAA 1440pTrải nghiệm đồ họa chất lượng cao ở độ phân giải 1080p-1440p, cân bằng giữa chơi game và làm việc sáng tạo nhẹ.Cần PSU công suất cao hơn, tản nhiệt tốt hơn, chi phí đầu tư cao, một số game 4K vẫn đòi hỏi GPU mạnh.Khoảng 18 - 30 triệu đồng , tùy cấu hình CPU, GPU và dung lượng RAM, SSD.
Gaming 4K - Cao cấpCho hình ảnh sắc nét, khung hình cao, tối đa hóa trải nghiệm đồ họa ở mức thiết lập cao nhất.Giá thành rất cao, yêu cầu PSU mạnh và hệ thống tản nhiệt tối ưu.Từ 35 triệu đồng trở lên , tùy GPU cao cấp và phụ kiện đi kèm.
Đồ họa 2D/3D - Dựng phimHiệu năng render mạnh mẽ nhờ CPU/GPU cao cấp và RAM lớn. Hỗ trợ nhiều khe M.2 cho tốc độ lưu trữ cao.Ngân sách cao, cần SSD NVMe dung lượng lớn và tản nhiệt tốt để đảm bảo hiệu năng ổn định.Khoảng 25 - 45 triệu đồng , tùy phần mềm thiết kế và card đồ họa sử dụng.
Lập trình - Máy ảoCPU nhiều nhân/luồng, RAM lớn giúp xử lý đa nhiệm tốt; không cần GPU rời nếu không làm ML/3D.Chạy nhiều máy ảo tiêu tốn RAM và SSD; không phù hợp để chơi game nếu thiếu GPU.Từ 18 - 30 triệu đồng , với CPU đa nhân, RAM 32-64GB và SSD 1-2TB.
Streaming - Sáng tạo nội dungCân bằng giữa hiệu năng chơi game và livestream, hỗ trợ mã hóa NVENC tối ưu chi phí.Cần cấu hình tối ưu riêng cho stream; yêu cầu RAM và SSD đủ lớn để lưu trữ media cache.Khoảng 22 - 35 triệu đồng , tùy tựa game và nhu cầu stream.
PC Mini ITXThiết kế nhỏ gọn, tính thẩm mỹ cao; có thể lắp linh kiện cao cấp trong không gian tối giản.Giới hạn không gian cho tản nhiệt và PSU; chi phí cao hơn so với case lớn ở cùng hiệu năng.Khoảng 20 - 35 triệu đồng , tùy main ITX, PSU SFX và kích thước GPU.
PC iGPU tiết kiệmSiêu tiết kiệm điện và chi phí, đáp ứng tốt các tác vụ văn phòng và game eSports nhẹ.Hiệu năng 3D thấp, phụ thuộc RAM hệ thống, khó đạt khung hình cao khi chơi game.Từ 8 - 12 triệu đồng , với CPU Ryzen G hoặc Intel có iGPU mạnh, kết hợp RAM tốc độ cao.

V. Lợi ích khi tự Build PC

So với việc mua sẵn một bộ máy tính hoàn chỉnh, tự build PC mang đến cho người dùng nhiều lợi ích vượt trội cả về hiệu năng, chi phí lẫn trải nghiệm sử dụng. Dưới đây là những ưu điểm nổi bật khi bạn tự tay lắp ráp và lựa chọn linh kiện cho chiếc máy tính cá nhân của mình:

1. Tối ưu chi phí đầu tư

Tự build máy tính giúp người dùng tiết kiệm đáng kể chi phí so với việc mua sẵn một bộ PC hoàn chỉnh. Lý do là khi tự lắp ráp, bạn có thể tối ưu hiệu năng của từng linh kiện dựa trên đúng nhu cầu sử dụng thực tế — điều mà các mẫu PC lắp sẵn thường khó đáp ứng, do chúng được cấu hình theo hướng đại trà, ít linh hoạt.

Bên cạnh đó, việc tự chọn linh kiện còn mang lại sự chủ động hoàn toàn cho người dùng. Bạn có thể dễ dàng kết hợp các sản phẩm từ nhiều thương hiệu khác nhau, từ phổ thông đến cao cấp, tùy theo ngân sách và mục đích sử dụng. Nhờ vậy, việc tự build PC không chỉ giúp tối ưu hiệu suất và chi phí, mà còn mang lại trải nghiệm cá nhân hóa - tạo nên một chiếc máy tính đúng nhu cầu, đúng phong cách của riêng bạn.

title

2. Hiệu năng chính xác theo nhu cầu

Một trong những ưu điểm nổi bật nhất khi tự build máy tính chính là khả năng tối ưu hiệu năng theo nhu cầu sử dụng thực tế. Nhờ đó, người dùng có thể tự do lựa chọn cấu hình phù hợp, đảm bảo chiếc PC luôn vận hành mượt mà, xử lý công việc hiệu quả và mang lại trải nghiệm giải trí tốt nhất.

Khi tự lắp ráp, bạn không chỉ giới hạn trong các cấu hình phần cứng cố định như những mẫu PC dựng sẵn, mà còn có thể trang bị cho hệ thống các linh kiện mới nhất như CPU, card đồ họa (VGA), mainboard, RAM hoặc ổ cứng tốc độ cao. Điều này giúp tận dụng tối đa sức mạnh của công nghệ hiện đại, đồng thời đảm bảo khả năng nâng cấp linh hoạt trong tương lai.

Không dừng lại ở phần cứng, người dùng còn có thể tùy chọn thiết bị ngoại vi theo sở thích và nhu cầu cá nhân như màn hình, bàn phím, chuột, tai nghe hoặc phụ kiện RGB. Chính sự chủ động trong lựa chọn này mang lại cảm giác thú vị, cá nhân hóa và độc đáo cho từng dàn PC, biến nó thành sản phẩm mang đậm dấu ấn riêng của người sở hữu.

title

3. Dễ dàng nâng cấp trong tương lai

Một trong những lợi thế lớn nhất khi tự build máy tính chính là khả năng nâng cấp linh hoạt theo thời gian. Khi bạn tự tay lựa chọn từng linh kiện, việc thay thế, mở rộng hoặc nâng cấp trong tương lai trở nên đơn giản và tiết kiệm chi phí hơn nhiều so với các dòng máy đồng bộ.

Bạn hoàn toàn có thể nâng cấp RAM để cải thiện hiệu suất đa nhiệm, thay SSD tốc độ cao hơn để tăng tốc độ khởi động và truy xuất dữ liệu, hoặc nâng cấp card đồ họa (GPU) để đáp ứng tốt hơn cho nhu cầu chơi game, làm đồ họa, render hay AI. Ngoài ra, nếu mainboard hỗ trợ socket và chipset tương thích, bạn còn có thể thay CPU mạnh hơn mà không cần thay toàn bộ hệ thống.

Chính khả năng linh hoạt này giúp tăng tuổi thọ cho dàn PC, đồng thời tránh tình trạng lỗi thời nhanh khi công nghệ thay đổi liên tục. Người dùng chỉ cần nâng cấp từng phần cần thiết, vừa đảm bảo hiệu năng luôn đáp ứng nhu cầu, vừa tiết kiệm chi phí đầu tư so với việc mua mới toàn bộ máy tính.

4. Cá nhân hóa thẩm mỹ và trải nghiệm

Tự build máy tính mang đến tính cá nhân hóa cao, cho phép người dùng tùy chỉnh cả cấu hình lẫn thiết kế ngoại hình theo sở thích riêng. Không chỉ dừng lại ở việc chọn linh kiện phù hợp với nhu cầu sử dụng, bạn còn có thể biến chiếc PC thành một sản phẩm mang đậm dấu ấn cá nhân - từ hiệu năng bên trong cho đến phong cách thẩm mỹ bên ngoài.

Người dùng có thể lựa chọn linh kiện được trang bị LED RGB, như RAM, quạt tản nhiệt, card đồ họa hoặc nguồn máy, để tạo nên hiệu ứng ánh sáng bắt mắt, giúp bộ PC trở nên ấn tượng và độc đáo hơn.

Bên cạnh đó, việc chọn case máy tính phù hợp cũng đóng vai trò quan trọng, không chỉ giúp tối ưu khả năng tản nhiệt và luồng khí, mà còn thể hiện phong cách riêng - từ tinh tế, tối giản cho đến gaming hiện đại và mạnh mẽ.

Ngoài ra, nhiều dòng mainboard cao cấp hiện nay còn hỗ trợ tính năng DIY, cho phép người dùng dễ dàng lắp đặt thêm đèn LED, phụ kiện trang trí hoặc thiết bị mở rộng, mang đến trải nghiệm sáng tạo và linh hoạt tối đa khi tự tay hoàn thiện “chiến máy” của mình.

title

5. Chủ động hiểu rõ máy tính của mình

Một trong những giá trị đặc biệt khi tự build PC là bạn sẽ hiểu rõ cấu trúc và nguyên lý hoạt động của từng linh kiện trong hệ thống. Từ CPU, RAM, mainboard, card đồ họa cho đến bộ nguồn và hệ thống tản nhiệt — mọi thứ đều do chính bạn tìm hiểu, chọn mua và lắp ráp. Quá trình này không chỉ giúp bạn nắm rõ cách vận hành của máy tính, mà còn mang lại kiến thức thực tế quý giá về phần cứng.

Nhờ đó, bạn sẽ chủ động hơn trong việc bảo trì, sửa chữa và nâng cấp. Khi xảy ra sự cố, bạn có thể tự kiểm tra và xác định lỗi mà không cần phụ thuộc hoàn toàn vào kỹ thuật viên. Việc này giúp tiết kiệm thời gian và chi phí, đồng thời giúp bạn nâng cao khả năng tự xử lý các vấn đề kỹ thuật cơ bản.

Ngoài ra, khi đã hiểu rõ từng thành phần của máy, bạn cũng dễ dàng đưa ra quyết định nâng cấp hợp lý, biết được linh kiện nào cần thay thế, linh kiện nào vẫn có thể tận dụng, từ đó tối ưu hóa hiệu năng và chi phí.

Tự build PC không chỉ giúp bạn sở hữu một bộ máy “đo ni đóng giày” theo nhu cầu, mà còn biến bạn thành người am hiểu và kiểm soát hoàn toàn hệ thống của mình, thay vì phụ thuộc vào người khác trong suốt quá trình sử dụng.

VI. Build PC chuyên nghiệp, giá tốt nhất tại Hoàng Hà PC

Bạn đang đau đầu vì những bộ PC lắp sẵn không như mong muốn? Muốn tự tay chọn linh kiện để tạo nên một cấu hình chơi mượt mọi tựa game, xử lý tốt mọi tác vụ? Hãy để dịch vụ build PC chuyên nghiệp của https://hoanghapc.vn/ giúp bạn hiện thực hóa ý tưởng đó!

Tại Hoàng Hà PC, bạn sẽ nhận được:

  • Công cụ Build PC online tiện lợi, kiểm tra tương thích tự động.
  • Linh kiện chính hãng 100% , giá cạnh tranh.
  • Đội ngũ kỹ thuật viên hơn 10 năm kinh nghiệm , lắp ráp - test chuẩn chỉnh.
  • Bảo hành linh kiện chính hãng , hỗ trợ tận tình sau bán.
  • Giao hàng toàn quốc , setup tận nơi (nếu yêu cầu).

VII. Kết luận: Tự Build PC - Sở hữu bộ máy “chuẩn nhu cầu” của riêng bạn

Build PC không chỉ là hành trình tạo ra một chiếc máy tính, mà còn là trải nghiệm công nghệ thú vị , nơi bạn hiểu rõ và tự hào về từng linh kiện mình chọn.

Dù bạn là game thủ, designer, kỹ sư hay người dùng phổ thông, việc tự xây dựng cấu hình sẽ giúp bạn tối ưu chi phí, tăng hiệu năng, và có được bộ máy “chuẩn chỉnh” cho nhu cầu của mình.

+
+
+ + {isOverflow && ( +
+ {!expanded ? ( + + ) : ( + + )} +
+ )} +
+ ) +} \ No newline at end of file diff --git a/src/components/buildpc/Popups.tsx b/src/components/buildpc/Popups.tsx new file mode 100644 index 0000000..ea76b94 --- /dev/null +++ b/src/components/buildpc/Popups.tsx @@ -0,0 +1,49 @@ +export default function Popups() { + return (<> + {/* Rebuild */} + + + {/* error */} +
+
+ + OPPS... +

Bạn chưa chọn sản phẩm nào

+
+ +
+
+
+ + {/* Popup variant */} + + ) +} \ No newline at end of file diff --git a/src/components/buildpc/Promotion.tsx b/src/components/buildpc/Promotion.tsx new file mode 100644 index 0000000..1ea6860 --- /dev/null +++ b/src/components/buildpc/Promotion.tsx @@ -0,0 +1,12 @@ +export default function Promotion() { + return ( +
+

+ Chi phí dự tính: + +

+ +
{/* // Khuyến mại buildpc */}
+
+ ) +} \ No newline at end of file diff --git a/src/components/buildpc/categories/index.tsx b/src/components/buildpc/categories/index.tsx new file mode 100644 index 0000000..49749dc --- /dev/null +++ b/src/components/buildpc/categories/index.tsx @@ -0,0 +1,57 @@ +'use client'; +import { useEffect, useState } from "react"; +import { categoryDetail } from "@/data/buildpc/categoryDetail"; +import ModalContent from "../modal"; + +export default function BuildPCCategories({ categories }: any) { + // console.log("categoryDetail: ", categoryDetail) + + const [selectedCategory, setSelectedCategory] = useState(null); + const [categoryInfo, setCategoryInfo] = useState(null); + + useEffect(() => { + if (selectedCategory) { + const filterCategory = categoryDetail.find((item: any) => item.id === selectedCategory); + setCategoryInfo(filterCategory); + } + }, [selectedCategory]) + + return ( + <> +
+ {categories.map((item: any, index: number) => ( + + +
+ +
+ + ) +} \ No newline at end of file diff --git a/src/components/buildpc/index.tsx b/src/components/buildpc/index.tsx index c409b1f..f326b96 100644 --- a/src/components/buildpc/index.tsx +++ b/src/components/buildpc/index.tsx @@ -1,3 +1,101 @@ +'use client'; +import Link from "next/link"; +import useFancybox from '@/hooks/useFancyBox'; +import { useState } from "react"; +import { buildPcData } from "@/data/buildpc"; + +import Content from "./Content"; +import BuildPCCategories from "./categories"; +import BuildPcPopups from "./Popups"; +import Promotion from "./Promotion"; +import Buttons from "./Buttons"; + export default function BuildPc() { - return(<> cpn buildpc ) + const [activeTab, setActiveTab] = useState(1); + + const [fancyboxRef] = useFancybox({}); + + return ( + <> +
+
+
+
    +
  1. + + Trang chủ + + +
  2. +
  3. + + Xây dựng máy tính - tạo máy tính + + +
  4. +
+
+
+ +
+
+

+ Xây Dựng Cấu Hình Máy Tính +

+ +
+ + Banner + +
+ +
+ { + [1, 2, 3, 4, 5].map((item) => ( + + )) + } +
+ +
+ + + + LÀM MỚI + +
+ + + +
+ + + +
+ +
+
+ + + + +
+ + ) } \ No newline at end of file diff --git a/src/components/buildpc/modal/Filter.tsx b/src/components/buildpc/modal/Filter.tsx new file mode 100644 index 0000000..41123a8 --- /dev/null +++ b/src/components/buildpc/modal/Filter.tsx @@ -0,0 +1,73 @@ +export default function Filter({ + attributeFilter, + brandFilter, + priceFilter +}: any) { + + return ( +
+ + { brandFilter && brandFilter.length > 0 && +
+

Hãng sản xuất

+ +
+ { + brandFilter.map((item: any) => ( + + )) + } +
+
+ } + + { priceFilter && priceFilter.length > 0 && +
+

Khoảng giá

+ +
+ { + priceFilter.map((item: any, index: number) => ( + + )) + } +
+
+ } + + { attributeFilter && attributeFilter.length > 0 && + attributeFilter.map((item: any, index: number) => ( +
+

{item.name}

+ +
+ { + item.value_list.map((value: any) => ( + + )) + } +
+
+ )) + } +
+ ) +} \ No newline at end of file diff --git a/src/components/buildpc/modal/Paging.tsx b/src/components/buildpc/modal/Paging.tsx new file mode 100644 index 0000000..9fb8741 --- /dev/null +++ b/src/components/buildpc/modal/Paging.tsx @@ -0,0 +1,15 @@ +export default function Paging({ item }: any) { + return ( +
+ { + item.map((item: any) => ( + + {item.name} + + )) + } +
+ ) +} \ No newline at end of file diff --git a/src/components/buildpc/modal/Products.tsx b/src/components/buildpc/modal/Products.tsx new file mode 100644 index 0000000..7bde665 --- /dev/null +++ b/src/components/buildpc/modal/Products.tsx @@ -0,0 +1,56 @@ +import Link from "next/link"; + +export default function ProductItem({ item, rowId }: any) { + + return ( +
+ + {item.productName} + + +
+ + {item.productName} + + + {item.productSKU != 0 && +

+ Mã SP: + {item.productSKU} +

+ } + + {item.warranty && +

+ Bảo hành: + {item.warranty} +

+ } + +

+ Kho hàng: + + {item.quantity > 0 ? "Còn hàng" : "Hết hàng"} + +

+ +

+ {item.price > 0 + ? item.price.toLocaleString() + ' đ' + : "Liên hệ" + } +

+
+ +
+ ) +} \ No newline at end of file diff --git a/src/components/buildpc/modal/Sort.tsx b/src/components/buildpc/modal/Sort.tsx new file mode 100644 index 0000000..69ab815 --- /dev/null +++ b/src/components/buildpc/modal/Sort.tsx @@ -0,0 +1,17 @@ +export default function Sort({ item }: any) { + return ( +
+ Sắp xếp: + +
+ ) +} \ No newline at end of file diff --git a/src/components/buildpc/modal/index.tsx b/src/components/buildpc/modal/index.tsx new file mode 100644 index 0000000..9648f6a --- /dev/null +++ b/src/components/buildpc/modal/index.tsx @@ -0,0 +1,87 @@ +import Filter from "./Filter"; +import ProductItem from "./Products" +import Sort from "./Sort"; +import Paing from "./Paging"; + +export default function ModalContent({ item }: any) { + if (!item) return null; + + console.log(item) + + const { + id, + attribute_filter_list, + brand_filter_list, + price_filter_list, + sort_by_collection, + paging_collection, + product_list + } = item; + + return ( +
+
+
+

Chọn linh kiện

+
+ + + +
+ +
+ + Lọc +
+ +
+ +
+ {product_list && product_list.length > 0 ? ( + <> +
+

Lọc sản phẩm

+ + +
+ +
+
+ {sort_by_collection && + + } + + {paging_collection && + + } +
+ +
+ { + product_list.map((item: any) => ( + + )) + } +
+
+ + ) : ( +

Không tìm thấy sản phẩm nào

+ ) + } +
+
+
+ ) +} \ No newline at end of file diff --git a/src/components/other/Header/index.tsx b/src/components/other/Header/index.tsx index 4168521..29dc2a0 100644 --- a/src/components/other/Header/index.tsx +++ b/src/components/other/Header/index.tsx @@ -1,7 +1,7 @@ 'use client'; import { useEffect, useState } from 'react'; import { usePathname } from 'next/navigation' -import useFancybox from '@/lib/useFancyBox'; +import useFancybox from '@/hooks/useFancyBox'; import Link from 'next/link'; import Logo from "./Logo"; diff --git a/src/components/product/detail/index.tsx b/src/components/product/detail/index.tsx index a112ad0..515760d 100644 --- a/src/components/product/detail/index.tsx +++ b/src/components/product/detail/index.tsx @@ -34,8 +34,6 @@ export default async function ProductDetail({ slug }: any) { warranty : slug.warranty, quantity : slug.quantity } - - console.log('aaaaaaaa: ', priceData) return ( <> diff --git a/src/data/buildpc/categoryDetail/index.tsx b/src/data/buildpc/categoryDetail/index.tsx new file mode 100644 index 0000000..10c9822 --- /dev/null +++ b/src/data/buildpc/categoryDetail/index.tsx @@ -0,0 +1,6738 @@ +export const categoryDetail = [ + { + "id": 2, + "name": "B\u1ed9 vi x\u1eed l\u00fd", + "attribute_filter_list": [ + { + "name": "D\u00f2ng cpu", + "filter_code": "", + "is_selected": 0, + "value_list": [ + { + "id": 16, + "name": "Core i5", + "api_key": "core-i5", + "description": "", + "count": 8, + "is_selected": 1, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=16&sort=order" + }, + { + "id": 22, + "name": "Core i7", + "api_key": "core-i7", + "description": "", + "count": 1, + "is_selected": 1, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=22&sort=order" + }, + { + "id": 12, + "name": "Core i9", + "api_key": "core-i9", + "description": "", + "count": 5, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=12&sort=order" + }, + { + "id": 378, + "name": "Ryzen 3", + "api_key": "ryzen-3", + "description": "", + "count": 1, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=378&sort=order" + }, + { + "id": 19, + "name": "Ryzen 5", + "api_key": "ryzen-5", + "description": "", + "count": 4, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=19&sort=order" + }, + { + "id": 20, + "name": "Ryzen 7", + "api_key": "ryzen-7", + "description": "", + "count": 3, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=20&sort=order" + }, + { + "id": 145, + "name": "Ryzen 9", + "api_key": "ryzen-9", + "description": "", + "count": 9, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=145&sort=order" + }, + { + "id": 102, + "name": "AMD Threadripper", + "api_key": "amd-threadripper", + "description": "", + "count": 17, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=102&sort=order" + }, + { + "id": 629, + "name": "Ultra 7", + "api_key": "ultra-7", + "description": "", + "count": 1, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=629&sort=order" + }, + { + "id": 628, + "name": "Ultra 9", + "api_key": "ultra-9", + "description": "", + "count": 3, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=628&sort=order" + } + ] + }, + { + "name": "Th\u1ebf H\u1ec7 CPU", + "filter_code": "", + "is_selected": 0, + "value_list": [ + { + "id": 422, + "name": "Intel Coffee Lake", + "api_key": "intel-coffee-lake", + "description": "", + "count": 1, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=422&sort=order" + }, + { + "id": 430, + "name": "AMD Ryzen 3000 Series", + "api_key": "amd-ryzen-3000-series", + "description": "", + "count": 1, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=430&sort=order" + }, + { + "id": 534, + "name": "AMD Ryzen 5000 Series", + "api_key": "amd-ryzen-5000-series", + "description": "", + "count": 4, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=534&sort=order" + }, + { + "id": 431, + "name": "AMD Ryzen Threadripper Series", + "api_key": "amd-ryzen-threadripper-series", + "description": "", + "count": 17, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=431&sort=order" + }, + { + "id": 590, + "name": "Intel Raptor Lake", + "api_key": "intel-raptor-lake", + "description": "", + "count": 7, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=590&sort=order" + }, + { + "id": 632, + "name": "Intel Arrow Lake", + "api_key": "intel-arrow-lake", + "description": "", + "count": 4, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=632&sort=order" + }, + { + "id": 575, + "name": "Intel Alder Lake", + "api_key": "intel-alder-lake", + "description": "", + "count": 4, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=575&sort=order" + }, + { + "id": 612, + "name": "Intel Raptor Lake Refresh", + "api_key": "intel-raptor-lake-refresh", + "description": "", + "count": 2, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=612&sort=order" + }, + { + "id": 625, + "name": "AMD Ryzen 9000 Series", + "api_key": "amd-ryzen-9000-series", + "description": "", + "count": 8, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=625&sort=order" + }, + { + "id": 589, + "name": "AMD Ryzen 7000 Series", + "api_key": "amd-ryzen-7000-series", + "description": "", + "count": 4, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=589&sort=order" + } + ] + }, + { + "name": "Socket", + "filter_code": "", + "is_selected": 0, + "value_list": [ + { + "id": 25, + "name": "LGA 1151", + "api_key": "lga-1151", + "description": "", + "count": 1, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=25&sort=order" + }, + { + "id": 30, + "name": "AM4", + "api_key": "am4", + "description": "", + "count": 5, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=30&sort=order" + }, + { + "id": 337, + "name": "sTRX4", + "api_key": "strx4", + "description": "", + "count": 6, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=337&sort=order" + }, + { + "id": 633, + "name": "sTR5", + "api_key": "str5", + "description": "", + "count": 11, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=633&sort=order" + }, + { + "id": 631, + "name": "LGA 1851", + "api_key": "lga-1851", + "description": "", + "count": 4, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=631&sort=order" + }, + { + "id": 574, + "name": "LGA 1700", + "api_key": "lga-1700", + "description": "", + "count": 13, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=574&sort=order" + }, + { + "id": 588, + "name": "AM5", + "api_key": "am5", + "description": "", + "count": 12, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&filter=588&sort=order" + } + ] + } + ], + "brand_filter_list": [ + { + "id": 3, + "name": "AMD", + "brand_index": "amd", + "image": "amd.jpg", + "count": 31, + "is_selected": 1, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&brand=3&category_id=2&sort=order" + }, + { + "id": 22, + "name": "INTEL", + "brand_index": "intel", + "image": "intel.jpg", + "count": 18, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&brand=22&category_id=2&sort=order" + } + ], + "price_filter_list": [ + { + "min": 0, + "max": 2000000, + "count": 2, + "is_selected": 1, + "name": "D\u01b0\u1edbi 2 tri\u1ec7u", + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&max=2000000&sort=order" + }, + { + "min": 2000000, + "max": 4000000, + "count": 5, + "is_selected": 0, + "name": "2 tri\u1ec7u - 4 tri\u1ec7u", + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&max=4000000&min=2000000&sort=order" + }, + { + "min": 4000000, + "max": 8000000, + "count": 9, + "is_selected": 0, + "name": "4 tri\u1ec7u - 8 tri\u1ec7u", + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&max=8000000&min=4000000&sort=order" + }, + { + "min": 8000000, + "max": 16000000, + "count": 14, + "is_selected": 0, + "name": "8 tri\u1ec7u - 16 tri\u1ec7u", + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&max=16000000&min=8000000&sort=order" + }, + { + "min": 16000000, + "max": 0, + "count": 20, + "is_selected": 0, + "name": "Tr\u00ean 16 tri\u1ec7u", + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&min=16000000&sort=order" + } + ], + "sort_by_collection": [ + { + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&sort=new", + "key": "new", + "name": "M\u1edbi nh\u1ea5t" + }, + { + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&sort=price-asc", + "key": "price-asc", + "name": "Gi\u00e1 t\u0103ng d\u1ea7n" + }, + { + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&sort=price-desc", + "key": "price-desc", + "name": "Gi\u00e1 gi\u1ea3m d\u1ea7n" + }, + { + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&sort=view", + "key": "view", + "name": "L\u01b0\u1ee3t xem" + }, + { + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&sort=comment", + "key": "comment", + "name": "Trao \u0111\u1ed5i" + }, + { + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&sort=rating", + "key": "rating", + "name": "\u0110\u00e1nh gi\u00e1" + }, + { + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&sort=name", + "key": "name", + "name": "T\u00ean A->Z" + } + ], + "sort_option": "order", + "search_query": "", + "search_url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&sort=order", + "product_list": [ + { + "id": 5401, + "productId": 5401, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 12990000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 12990000, + "normal_price": 12990000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2026-02-02 16:27:25", + "warranty": "36 Th\u00e1ng", + "productName": "CPU Intel Core Ultra 9 285K (Up 5.7 GHz, 24 Nh\u00e2n 24 Lu\u1ed3ng, 36MB Cache, Arrow Lake)", + "productSummary": "

Socket:\u00a0FCLGA1851<\/p>\r\n

S\u1ed1 l\u00f5i:\u00a024 (8 P-core,\u00a016 E-core)<\/p>\r\n

S\u1ed1 lu\u1ed3ng:\u00a024<\/p>\r\n

T\u1ed1c \u0111\u1ed9 x\u1eed l\u00ed t\u1ed1i \u0111a:\u00a0up to 5.7 GHz<\/p>\r\n

B\u1ed9 nh\u1edb \u0111\u1ec7m:\u00a036 MB Intel\u00ae Smart Cache<\/p>\r\n

Bus ram h\u1ed7 tr\u1ee3:\u00a0Up to DDR5 6400 MT\/s<\/p>\r\n

M\u1ee9c ti\u00eau th\u1ee5 \u0111i\u1ec7n:\u00a0125 W<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5401_cpu_ultra_9_285k_sale_t12_2025.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5401_cpu_ultra_9_285k_sale_t12_2025.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5401_cpu_ultra_9_285k_sale_t12_2025.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5401_cpu_ultra_9_285k_sale_t12_2025.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5401_core_ultra_9_285k_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5401_core_ultra_9_285k_ha1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5401_cpu_285k_sp_3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5401_cpu_285k_sp_3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5401_cpu_285k_sp_2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5401_cpu_285k_sp_2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5401_cpu_285k_sp.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5401_cpu_285k_sp.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-intel-core-ultra-9-285k", + "brand": { + "id": 22, + "brand_index": "intel", + "name": "INTEL", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/intel.jpg", + "url": "\/brand\/intel" + }, + "visit": 26435, + "rating": 5, + "reviewCount": 1, + "review": { + "rate": 5, + "total": 1 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "HHPC 123", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "other": [ + { + "id": 0, + "title": "

\u2b50\u00a0Gi\u00e1 khuy\u1ebfn m\u00e3i CPU\u00a0Ultra\u00a09 285K ch\u1ec9 c\u00f2n<\/span><\/strong><\/span>\u00a0<\/span>12.990.000\u0111<\/span>\u00a0\u00e1p d\u1ee5ng khi build PC t\u1ea1i Ho\u00e0ng H\u00e0 PC<\/span><\/strong><\/span><\/p>\r\n

\u2b50 Gi\u00e1\u00a0CPU\u00a0Ultra 9 285K khi\u00a0mua k\u00e8m\u00a0main Z890 l\u00e0:\u00a013.990.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb\u00a0CPU\u00a0Ultra 9 285K l\u00e0:\u00a015.990.000\u0111<\/span><\/strong><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c<\/span><\/p>\r\n

\u2b50 Ch\u01b0\u01a1ng tr\u00ecnh \u00e1p d\u1ee5ng v\u1edbi kh\u00e1ch h\u00e0ng Build PC c\u00f3 \u0111\u1ee7 th\u00eam 7 linh ki\u1ec7n sau:\u00a0VGA,T\u1ea2N NHI\u1ec6T, MAIN, RAM, SSD, NGU\u1ed2N , V\u1ece CASE<\/span><\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ], + "all": [ + { + "id": 0, + "title": "

\u2b50\u00a0Gi\u00e1 khuy\u1ebfn m\u00e3i CPU\u00a0Ultra\u00a09 285K ch\u1ec9 c\u00f2n<\/span><\/strong><\/span>\u00a0<\/span>12.990.000\u0111<\/span>\u00a0\u00e1p d\u1ee5ng khi build PC t\u1ea1i Ho\u00e0ng H\u00e0 PC<\/span><\/strong><\/span><\/p>\r\n

\u2b50 Gi\u00e1\u00a0CPU\u00a0Ultra 9 285K khi\u00a0mua k\u00e8m\u00a0main Z890 l\u00e0:\u00a013.990.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb\u00a0CPU\u00a0Ultra 9 285K l\u00e0:\u00a015.990.000\u0111<\/span><\/strong><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c<\/span><\/p>\r\n

\u2b50 Ch\u01b0\u01a1ng tr\u00ecnh \u00e1p d\u1ee5ng v\u1edbi kh\u00e1ch h\u00e0ng Build PC c\u00f3 \u0111\u1ee7 th\u00eam 7 linh ki\u1ec7n sau:\u00a0VGA,T\u1ea2N NHI\u1ec6T, MAIN, RAM, SSD, NGU\u1ed2N , V\u1ece CASE<\/span><\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 1, + "isBestSale": 0, + "isSaleOff": 1, + "online-only": 0 + }, + "bulk_price": [], + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": [], + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 2, + "catPath": ":2", + "name": "CPU - B\u1ed9 Vi X\u1eed L\u00fd", + "url": "\/cpu-bo-vi-xu-ly" + }, + { + "id": 259, + "catPath": ":259:107:2", + "name": "Intel Core Ultra 9", + "url": "\/intel-core-ultra-9" + } + ] + }, + { + "id": 4720, + "productId": 4720, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 11990000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 11990000, + "normal_price": 11990000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2025-10-27 17:05:31", + "warranty": "36 Th\u00e1ng", + "productName": "CPU Intel Core i9 14900K (Up 6.0 GHz, 24 Nh\u00e2n 32 Lu\u1ed3ng, 36MB Cache, Raptor Lake)", + "productSummary": "

CPU Intel\u00a0Core i9 14900K<\/strong><\/p>\r\n

Socket: FCLGA1700<\/p>\r\n

S\u1ed1 l\u00f5i\/lu\u1ed3ng:\u00a024 nh\u00e2n,\u00a032 lu\u1ed3ng<\/p>\r\n

T\u1ed1c \u0111\u1ed9 x\u1eed l\u00ed t\u1ed1i \u0111a:\u00a06.0 GHz<\/p>\r\n

B\u1ed9 nh\u1edb \u0111\u1ec7m:\u00a036 MB Intel\u00ae Smart Cache<\/p>\r\n

Bus ram h\u1ed7 tr\u1ee3: DDR4 3200 MT\/s, DDR5 5600 MT\/s<\/p>\r\n

M\u1ee9c ti\u00eau th\u1ee5 \u0111i\u1ec7n:\u00a0125 W<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4720_cpu_14900k_sale_t8_2025_s1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4720_cpu_14900k_sale_t8_2025_s1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4720_cpu_14900k_sale_t8_2025_s1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4720_cpu_14900k_sale_t8_2025_s1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4720_cpu_14900k_hatt_ha3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4720_cpu_14900k_hatt_ha3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4720_cpu_14900k_hatt_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4720_cpu_14900k_hatt_ha2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4720_cpu_14900k_hatt_h1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4720_cpu_14900k_hatt_h1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-intel-core-i9-14900k", + "brand": { + "id": 22, + "brand_index": "intel", + "name": "INTEL", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/intel.jpg", + "url": "\/brand\/intel" + }, + "visit": 66722, + "rating": 5, + "reviewCount": 2, + "review": { + "rate": 5, + "total": 2 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "other": [ + { + "id": 0, + "title": "

\u2b50 Gi\u00e1 khuy\u1ebfn m\u00e3i CPU i9 14900K ch\u1ec9 c\u00f2n 11.990.000\u0111<\/span>\u00a0\u00e1p d\u1ee5ng khi build PC t\u1ea1i Ho\u00e0ng H\u00e0 PC<\/strong><\/span><\/p>\r\n

\u2b50 Gi\u00e1 CPU i9 14900K khi build\u00a0m\u00e1y\u00a0kh\u00f4ng VGA l\u00e0:\u00a012.690.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb CPU i9 14900K l\u00e0: 13.500.000\u0111 <\/strong><\/span><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c <\/span><\/p>\r\n

\u2b50 Ch\u01b0\u01a1ng tr\u00ecnh \u00e1p d\u1ee5ng v\u1edbi kh\u00e1ch h\u00e0ng Build PC c\u00f3 \u0111\u1ee7 th\u00eam 7 linh ki\u1ec7n sau:\u00a0VGA,T\u1ea2N NHI\u1ec6T N\u01af\u1edaC AIO, MAIN (Z690 ho\u1eb7c Z790), RAM, SSD, NGU\u1ed2N , V\u1ece CASE<\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ], + "all": [ + { + "id": 0, + "title": "

\u2b50 Gi\u00e1 khuy\u1ebfn m\u00e3i CPU i9 14900K ch\u1ec9 c\u00f2n 11.990.000\u0111<\/span>\u00a0\u00e1p d\u1ee5ng khi build PC t\u1ea1i Ho\u00e0ng H\u00e0 PC<\/strong><\/span><\/p>\r\n

\u2b50 Gi\u00e1 CPU i9 14900K khi build\u00a0m\u00e1y\u00a0kh\u00f4ng VGA l\u00e0:\u00a012.690.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb CPU i9 14900K l\u00e0: 13.500.000\u0111 <\/strong><\/span><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c <\/span><\/p>\r\n

\u2b50 Ch\u01b0\u01a1ng tr\u00ecnh \u00e1p d\u1ee5ng v\u1edbi kh\u00e1ch h\u00e0ng Build PC c\u00f3 \u0111\u1ee7 th\u00eam 7 linh ki\u1ec7n sau:\u00a0VGA,T\u1ea2N NHI\u1ec6T N\u01af\u1edaC AIO, MAIN (Z690 ho\u1eb7c Z790), RAM, SSD, NGU\u1ed2N , V\u1ece CASE<\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 1, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": [], + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": [], + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 112, + "catPath": ":112:107:2", + "name": "Intel Core i9", + "url": "\/cpu-intel-core-i9" + }, + { + "id": 2, + "catPath": ":2", + "name": "CPU - B\u1ed9 Vi X\u1eed L\u00fd", + "url": "\/cpu-bo-vi-xu-ly" + } + ] + }, + { + "id": 4721, + "productId": 4721, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 11690000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 11690000, + "normal_price": 11690000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2025-12-27 11:08:21", + "warranty": "36 Th\u00e1ng", + "productName": "CPU Intel Core i9 14900KF (Up 6.0 GHz, 24 Nh\u00e2n 32 Lu\u1ed3ng, 36MB Cache, Raptor Lake)", + "productSummary": "

Socket: FCLGA1700<\/p>\r\n

S\u1ed1 l\u00f5i\/lu\u1ed3ng:\u00a024 nh\u00e2n,\u00a032 lu\u1ed3ng<\/p>\r\n

T\u1ed1c \u0111\u1ed9 x\u1eed l\u00ed t\u1ed1i \u0111a:\u00a06.0 GHz<\/p>\r\n

B\u1ed9 nh\u1edb \u0111\u1ec7m:\u00a036 MB<\/p>\r\n

Bus ram h\u1ed7 tr\u1ee3: DDR4 3200 MT\/s, DDR5 5600 MT\/s<\/p>\r\n

M\u1ee9c ti\u00eau th\u1ee5 \u0111i\u1ec7n:\u00a0125 W<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4721_i9_14900kf_sale_t12_2025.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4721_i9_14900kf_sale_t12_2025.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4721_i9_14900kf_sale_t12_2025.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4721_i9_14900kf_sale_t12_2025.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4721_img_2898.jpeg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4721_img_2898.jpeg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-intel-core-i9-14900kf", + "brand": { + "id": 22, + "brand_index": "intel", + "name": "INTEL", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/intel.jpg", + "url": "\/brand\/intel" + }, + "visit": 16001, + "rating": 5, + "reviewCount": 1, + "review": { + "rate": 5, + "total": 1 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "other": [ + { + "id": 0, + "title": "

\u2b50\u00a0Gi\u00e1 khuy\u1ebfn m\u00e3i CPU i9 14900KF ch\u1ec9 c\u00f2n\u00a011.690.000\u0111<\/span>\u00a0\u00e1p d\u1ee5ng khi build PC t\u1ea1i Ho\u00e0ng H\u00e0 PC<\/strong><\/span><\/p>\r\n

\u2b50 Gi\u00e1 CPU i9 14900KF khi build\u00a0m\u00e1y\u00a0kh\u00f4ng VGA l\u00e0:\u00a012.290.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb CPU i9 14900KF l\u00e0:\u00a012.890.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c<\/span><\/p>\r\n

\u2b50 Ch\u01b0\u01a1ng tr\u00ecnh \u00e1p d\u1ee5ng v\u1edbi kh\u00e1ch h\u00e0ng Build PC c\u00f3 \u0111\u1ee7 th\u00eam 7 linh ki\u1ec7n sau:\u00a0VGA,T\u1ea2N NHI\u1ec6T N\u01af\u1edaC AIO, MAIN (Z690 ho\u1eb7c Z790), RAM, SSD, NGU\u1ed2N , V\u1ece CASE<\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ], + "all": [ + { + "id": 0, + "title": "

\u2b50\u00a0Gi\u00e1 khuy\u1ebfn m\u00e3i CPU i9 14900KF ch\u1ec9 c\u00f2n\u00a011.690.000\u0111<\/span>\u00a0\u00e1p d\u1ee5ng khi build PC t\u1ea1i Ho\u00e0ng H\u00e0 PC<\/strong><\/span><\/p>\r\n

\u2b50 Gi\u00e1 CPU i9 14900KF khi build\u00a0m\u00e1y\u00a0kh\u00f4ng VGA l\u00e0:\u00a012.290.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb CPU i9 14900KF l\u00e0:\u00a012.890.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c<\/span><\/p>\r\n

\u2b50 Ch\u01b0\u01a1ng tr\u00ecnh \u00e1p d\u1ee5ng v\u1edbi kh\u00e1ch h\u00e0ng Build PC c\u00f3 \u0111\u1ee7 th\u00eam 7 linh ki\u1ec7n sau:\u00a0VGA,T\u1ea2N NHI\u1ec6T N\u01af\u1edaC AIO, MAIN (Z690 ho\u1eb7c Z790), RAM, SSD, NGU\u1ed2N , V\u1ece CASE<\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 1, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": [], + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": [], + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 112, + "catPath": ":112:107:2", + "name": "Intel Core i9", + "url": "\/cpu-intel-core-i9" + }, + { + "id": 2, + "catPath": ":2", + "name": "CPU - B\u1ed9 Vi X\u1eed L\u00fd", + "url": "\/cpu-bo-vi-xu-ly" + } + ] + }, + { + "id": 3547, + "productId": 3547, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 10990000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 10990000, + "normal_price": 10990000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2025-09-16 13:54:37", + "warranty": "36 Th\u00e1ng", + "productName": "CPU Intel Core i9 13900K (5.8 GHz, 24 Nh\u00e2n 32 Lu\u1ed3ng, 36M Cache, Raptor Lake)", + "productSummary": "

CPU Intel Core i9-13900K<\/p>\r\n

Socket: FCLGA1700<\/p>\r\n

S\u1ed1 l\u00f5i\/ lu\u1ed3ng: 24 nh\u00e2n, 32 lu\u1ed3ng<\/p>\r\n

B\u1ed9 nh\u1edb \u0111\u1ec7m: 36 MB<\/p>\r\n

Bus ram h\u1ed7 tr\u1ee3: DDR4 3200MHz, DDR5-5600MHz<\/p>\r\n

C\u00f4ng su\u1ea5t ti\u00eau th\u1ee5: 125W<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3547_cpu_13900k_sale_t9_2025.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3547_cpu_13900k_sale_t9_2025.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3547_cpu_13900k_sale_t9_2025.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3547_cpu_13900k_sale_t9_2025.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3547_cpu_i9_13900k.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3547_cpu_i9_13900k.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3547_i9_13900k_5.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3547_i9_13900k_5.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3547_i9_13900k_4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3547_i9_13900k_4.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3547_i9_13900k_3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3547_i9_13900k_3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3547_i9_13900k_2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3547_i9_13900k_2.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-intel-core-i9-13900k", + "brand": { + "id": 22, + "brand_index": "intel", + "name": "INTEL", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/intel.jpg", + "url": "\/brand\/intel" + }, + "visit": 99688, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "other": [ + { + "id": 0, + "title": "

\u2b50 Gi\u00e1 khuy\u1ebfn m\u00e3i CPU i9 13900K ch\u1ec9 c\u00f2n 10<\/span>.990.000\u0111<\/span> \u00e1p d\u1ee5ng khi build PC t\u1ea1i Ho\u00e0ng H\u00e0 PC<\/strong><\/span><\/p>\r\n

\u2b50 Gi\u00e1 CPU i9 13900K khi build\u00a0m\u00e1y\u00a0kh\u00f4ng VGA l\u00e0:\u00a011.990.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb CPU i9 13900K l\u00e0: 12.990.000\u0111 <\/strong><\/span><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c <\/span><\/p>\r\n

\u2b50 Ch\u01b0\u01a1ng tr\u00ecnh \u00e1p d\u1ee5ng v\u1edbi kh\u00e1ch h\u00e0ng Build PC c\u00f3 \u0111\u1ee7 th\u00eam 7 linh ki\u1ec7n sau:\u00a0VGA,T\u1ea2N NHI\u1ec6T, MAIN, RAM, SSD, NGU\u1ed2N , V\u1ece CASE<\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ], + "all": [ + { + "id": 0, + "title": "

\u2b50 Gi\u00e1 khuy\u1ebfn m\u00e3i CPU i9 13900K ch\u1ec9 c\u00f2n 10<\/span>.990.000\u0111<\/span> \u00e1p d\u1ee5ng khi build PC t\u1ea1i Ho\u00e0ng H\u00e0 PC<\/strong><\/span><\/p>\r\n

\u2b50 Gi\u00e1 CPU i9 13900K khi build\u00a0m\u00e1y\u00a0kh\u00f4ng VGA l\u00e0:\u00a011.990.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb CPU i9 13900K l\u00e0: 12.990.000\u0111 <\/strong><\/span><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c <\/span><\/p>\r\n

\u2b50 Ch\u01b0\u01a1ng tr\u00ecnh \u00e1p d\u1ee5ng v\u1edbi kh\u00e1ch h\u00e0ng Build PC c\u00f3 \u0111\u1ee7 th\u00eam 7 linh ki\u1ec7n sau:\u00a0VGA,T\u1ea2N NHI\u1ec6T, MAIN, RAM, SSD, NGU\u1ed2N , V\u1ece CASE<\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 1, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 112, + "catPath": ":112:107:2", + "name": "Intel Core i9", + "url": "\/cpu-intel-core-i9" + } + ] + }, + { + "id": 3545, + "productId": 3545, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 0, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 0, + "normal_price": 0, + "min_purchase": 1, + "max_purchase": 0, + "remain_quantity": 0, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2026-02-22 17:26:49", + "warranty": "36 Th\u00e1ng", + "productName": "CPU Intel Core i5 13600K (5.1 GHz, 14 Nh\u00e2n 20 Lu\u1ed3ng, 24MB Cache, Raptor Lake)", + "productSummary": "

Socket: FCLGA1700<\/p>\r\n

S\u1ed1 l\u00f5i\/lu\u1ed3ng: 14\/20<\/p>\r\n

B\u1ed9 nh\u1edb \u0111\u1ec7m: 24 MB<\/p>\r\n

Bus ram h\u1ed7 tr\u1ee3: DDR4 3200MHz, DDR5-5600MHz<\/p>\r\n

C\u00f4ng su\u1ea5t ti\u00eau th\u1ee5: 125W<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3545_cpu_intel_core_i5_13600k_hatt1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3545_cpu_intel_core_i5_13600k_hatt1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3545_cpu_13600k_sale_t10_2024.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3545_cpu_13600k_sale_t10_2024.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3545_cpu_intel_core_i5_13600k_hatt1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3545_cpu_intel_core_i5_13600k_hatt1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3545_cpu_intel_core_i5_13600k_hatt2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3545_cpu_intel_core_i5_13600k_hatt2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3545_cpu_intel_core_i5_13600k_hatt3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3545_cpu_intel_core_i5_13600k_hatt3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3545_13600k_hatt3s.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3545_13600k_hatt3s.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3545_13600k_hatt2s.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3545_13600k_hatt2s.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3545_13600k_hatt1s.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3545_13600k_hatt1s.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3545_i5_13600k_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3545_i5_13600k_1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-intel-core-i5-13600k", + "brand": { + "id": 22, + "brand_index": "intel", + "name": "INTEL", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/intel.jpg", + "url": "\/brand\/intel" + }, + "visit": 130441, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 0, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 110, + "catPath": ":110:107:2", + "name": "Intel Core i5", + "url": "\/cpu-intel-core-i5" + } + ] + }, + { + "id": 4071, + "productId": 4071, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 4990000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 4990000, + "normal_price": 4990000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2026-02-09 08:45:03", + "warranty": "36 th\u00e1ng", + "productName": "CPU Intel Core i5 13600KF (5.1 GHz, 14 Nh\u00e2n 20 Lu\u1ed3ng, 24MB Cache, Raptor Lake)", + "productSummary": "

Socket: FCLGA1700<\/p>\r\n

S\u1ed1 l\u00f5i\/lu\u1ed3ng: 14\/20<\/p>\r\n

B\u1ed9 nh\u1edb \u0111\u1ec7m: 24 MB<\/p>\r\n

Bus ram h\u1ed7 tr\u1ee3: DDR4 3200MHz, DDR5-5600MHz<\/p>\r\n

C\u00f4ng su\u1ea5t ti\u00eau th\u1ee5: 125W<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4071_core_i5_13600kf_sale_t12_2025.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4071_core_i5_13600kf_sale_t12_2025.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4071_core_i5_13600kf_sale_t12_2025.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4071_core_i5_13600kf_sale_t12_2025.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4071_13600kf_hatt4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4071_13600kf_hatt4.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4071_13600kf_hatt1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4071_13600kf_hatt1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4071_13600kf_hatt3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4071_13600kf_hatt3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4071_13600kf_hatt2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4071_13600kf_hatt2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4071_core_i5_13600kf_ha3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4071_core_i5_13600kf_ha3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4071_core_i5_13600kf_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4071_core_i5_13600kf_ha2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4071_core_i5_13600kf_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4071_core_i5_13600kf_ha1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-intel-core-i5-13600kf", + "brand": { + "id": 22, + "brand_index": "intel", + "name": "INTEL", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/intel.jpg", + "url": "\/brand\/intel" + }, + "visit": 25158, + "rating": 5, + "reviewCount": 2, + "review": { + "rate": 5, + "total": 2 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "other": [ + { + "id": 0, + "title": "

\u2b50\u00a0Gi\u00e1 khuy\u1ebfn m\u1ea1i ch\u1ec9 c\u00f2n\u00a04.990.000\u0111<\/span>\u00a0\u00e1p d\u1ee5ng khi build PC t\u1ea1i Ho\u00e0ng H\u00e0 PC<\/strong><\/span><\/p>\r\n

\u2b50 Gi\u00e1 khi build\u00a0m\u00e1y\u00a0kh\u00f4ng VGA l\u00e0:\u00a05.590.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb l\u00e0:\u00a06.190.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c<\/span><\/p>\r\n

\u2b50 Ch\u01b0\u01a1ng tr\u00ecnh \u00e1p d\u1ee5ng v\u1edbi kh\u00e1ch h\u00e0ng Build PC c\u00f3 \u0111\u1ee7 th\u00eam 7 linh ki\u1ec7n sau:\u00a0VGA,T\u1ea2N NHI\u1ec6T N\u01af\u1edaC AIO, MAIN, RAM, SSD, NGU\u1ed2N , V\u1ece CASE<\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ], + "all": [ + { + "id": 0, + "title": "

\u2b50\u00a0Gi\u00e1 khuy\u1ebfn m\u1ea1i ch\u1ec9 c\u00f2n\u00a04.990.000\u0111<\/span>\u00a0\u00e1p d\u1ee5ng khi build PC t\u1ea1i Ho\u00e0ng H\u00e0 PC<\/strong><\/span><\/p>\r\n

\u2b50 Gi\u00e1 khi build\u00a0m\u00e1y\u00a0kh\u00f4ng VGA l\u00e0:\u00a05.590.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb l\u00e0:\u00a06.190.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c<\/span><\/p>\r\n

\u2b50 Ch\u01b0\u01a1ng tr\u00ecnh \u00e1p d\u1ee5ng v\u1edbi kh\u00e1ch h\u00e0ng Build PC c\u00f3 \u0111\u1ee7 th\u00eam 7 linh ki\u1ec7n sau:\u00a0VGA,T\u1ea2N NHI\u1ec6T N\u01af\u1edaC AIO, MAIN, RAM, SSD, NGU\u1ed2N , V\u1ece CASE<\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 110, + "catPath": ":110:107:2", + "name": "Intel Core i5", + "url": "\/cpu-intel-core-i5" + }, + { + "id": 2, + "catPath": ":2", + "name": "CPU - B\u1ed9 Vi X\u1eed L\u00fd", + "url": "\/cpu-bo-vi-xu-ly" + } + ] + }, + { + "id": 2906, + "productId": 2906, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 7990000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 7990000, + "normal_price": 7990000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2025-12-16 10:40:30", + "warranty": "36 Th\u00e1ng", + "productName": "CPU Intel Core i9 12900K (5.20GHz, 16 Nh\u00e2n 24 Lu\u1ed3ng, 30M Cache, Alder Lake)", + "productSummary": "

Socket: FCLGA1700<\/p>\r\n

S\u1ed1 l\u00f5i\/lu\u1ed3ng: 16\/24<\/p>\r\n

B\u1ed9 nh\u1edb \u0111\u1ec7m: 30 MB<\/p>\r\n

Bus ram h\u1ed7 tr\u1ee3: DDR4 3200MHz, DDR5-4800<\/p>\r\n

M\u1ee9c ti\u00eau th\u1ee5 \u0111i\u1ec7n: 125W<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2906_core_i9_12900k_sale_t12_2025.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2906_core_i9_12900k_sale_t12_2025.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2906_core_i9_12900k_sale_t12_2025.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2906_core_i9_12900k_sale_t12_2025.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2906_cpu_intel_12900k_hatt1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2906_cpu_intel_12900k_hatt1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2906_cpu_intel_12900k_hatt2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2906_cpu_intel_12900k_hatt2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2906_cpu_intel_12900k_hatt3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2906_cpu_intel_12900k_hatt3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2906_cpu_intel_core_i9_12900k_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2906_cpu_intel_core_i9_12900k_1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2906_i9_12900k_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2906_i9_12900k_1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2906_i9_12900k_3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2906_i9_12900k_3.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-intel-core-i9-12900k", + "brand": { + "id": 22, + "brand_index": "intel", + "name": "INTEL", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/intel.jpg", + "url": "\/brand\/intel" + }, + "visit": 94740, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 0, + "total": 1 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "other": [ + { + "id": 0, + "title": "

\u2b50\u00a0Gi\u00e1 khuy\u1ebfn m\u1ea1i ch\u1ec9 c\u00f2n\u00a07.990.000\u0111<\/span>\u00a0\u00e1p d\u1ee5ng khi build PC t\u1ea1i Ho\u00e0ng H\u00e0 PC<\/strong><\/span><\/p>\r\n

\u2b50 Gi\u00e1 khi build\u00a0m\u00e1y\u00a0kh\u00f4ng VGA l\u00e0:\u00a08.490.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb l\u00e0:\u00a08.990.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c<\/span><\/p>\r\n

\u2b50 Ch\u01b0\u01a1ng tr\u00ecnh \u00e1p d\u1ee5ng v\u1edbi kh\u00e1ch h\u00e0ng Build PC c\u00f3 \u0111\u1ee7 th\u00eam 7 linh ki\u1ec7n sau:\u00a0VGA,T\u1ea2N NHI\u1ec6T N\u01af\u1edaC AIO, MAIN (Z690 ho\u1eb7c Z790), RAM, SSD, NGU\u1ed2N , V\u1ece CASE<\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ], + "all": [ + { + "id": 0, + "title": "

\u2b50\u00a0Gi\u00e1 khuy\u1ebfn m\u1ea1i ch\u1ec9 c\u00f2n\u00a07.990.000\u0111<\/span>\u00a0\u00e1p d\u1ee5ng khi build PC t\u1ea1i Ho\u00e0ng H\u00e0 PC<\/strong><\/span><\/p>\r\n

\u2b50 Gi\u00e1 khi build\u00a0m\u00e1y\u00a0kh\u00f4ng VGA l\u00e0:\u00a08.490.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb l\u00e0:\u00a08.990.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c<\/span><\/p>\r\n

\u2b50 Ch\u01b0\u01a1ng tr\u00ecnh \u00e1p d\u1ee5ng v\u1edbi kh\u00e1ch h\u00e0ng Build PC c\u00f3 \u0111\u1ee7 th\u00eam 7 linh ki\u1ec7n sau:\u00a0VGA,T\u1ea2N NHI\u1ec6T N\u01af\u1edaC AIO, MAIN (Z690 ho\u1eb7c Z790), RAM, SSD, NGU\u1ed2N , V\u1ece CASE<\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 1, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 112, + "catPath": ":112:107:2", + "name": "Intel Core i9", + "url": "\/cpu-intel-core-i9" + } + ] + }, + { + "id": 2912, + "productId": 2912, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 2990000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 2990000, + "normal_price": 2990000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2025-12-29 09:17:26", + "warranty": "36 Th\u00e1ng", + "productName": "CPU Intel Core i5 12400F (Up To 4.40GHz, 6 Nh\u00e2n 12 Lu\u1ed3ng,18MB Cache, Alder Lake)", + "productSummary": "

Socket: FCLGA1700<\/p>\r\n

S\u1ed1 l\u00f5i: 6\u00a0nh\u00e2n<\/p>\r\n

S\u1ed1 lu\u1ed3ng:\u00a012 lu\u1ed3ng<\/p>\r\n

B\u1ed9 nh\u1edb \u0111\u1ec7m: 18 MB<\/p>\r\n

Bus ram h\u1ed7 tr\u1ee3: DDR4 3200MHz, DDR5-4800<\/p>\r\n

M\u1ee9c ti\u00eau th\u1ee5 \u0111i\u1ec7n: 65W<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2912_core_i5_12400f_sale_t12_2025s.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2912_core_i5_12400f_sale_t12_2025s.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2912_core_i5_12400f_sale_t12_2025s.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2912_core_i5_12400f_sale_t12_2025s.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2912_cpu_intel_core_i5_12400f_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2912_cpu_intel_core_i5_12400f_1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2912_intel_core_i5_12400f_hatt2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2912_intel_core_i5_12400f_hatt2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2912_intel_core_i5_12400f_hatt1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2912_intel_core_i5_12400f_hatt1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2912_i5_12400f_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2912_i5_12400f_1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2912_i5_12400f_4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2912_i5_12400f_4.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2912_i5_12400f_3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2912_i5_12400f_3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2912_i5_12400f_2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2912_i5_12400f_2.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-intel-core-i5-12400f", + "brand": { + "id": 22, + "brand_index": "intel", + "name": "INTEL", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/intel.jpg", + "url": "\/brand\/intel" + }, + "visit": 143230, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "other": [ + { + "id": 0, + "title": "

\u2b50\u00a0Gi\u00e1 khuy\u1ebfn m\u1ea1i ch\u1ec9 c\u00f2n\u00a02.990.000\u0111<\/span>\u00a0\u00e1p d\u1ee5ng khi build PC t\u1ea1i Ho\u00e0ng H\u00e0 PC<\/strong><\/span><\/p>\r\n

\u2b50 Gi\u00e1 khi build\u00a0m\u00e1y\u00a0kh\u00f4ng VGA l\u00e0:\u00a03.490.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb l\u00e0:\u00a03.790.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c<\/span><\/p>\r\n

\u2b50 Ch\u01b0\u01a1ng tr\u00ecnh \u00e1p d\u1ee5ng v\u1edbi kh\u00e1ch h\u00e0ng Build PC c\u00f3 \u0111\u1ee7 th\u00eam 7 linh ki\u1ec7n sau:\u00a0VGA,T\u1ea2N NHI\u1ec6T, MAIN, RAM, SSD, NGU\u1ed2N , V\u1ece CASE<\/span><\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ], + "all": [ + { + "id": 0, + "title": "

\u2b50\u00a0Gi\u00e1 khuy\u1ebfn m\u1ea1i ch\u1ec9 c\u00f2n\u00a02.990.000\u0111<\/span>\u00a0\u00e1p d\u1ee5ng khi build PC t\u1ea1i Ho\u00e0ng H\u00e0 PC<\/strong><\/span><\/p>\r\n

\u2b50 Gi\u00e1 khi build\u00a0m\u00e1y\u00a0kh\u00f4ng VGA l\u00e0:\u00a03.490.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb l\u00e0:\u00a03.790.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c<\/span><\/p>\r\n

\u2b50 Ch\u01b0\u01a1ng tr\u00ecnh \u00e1p d\u1ee5ng v\u1edbi kh\u00e1ch h\u00e0ng Build PC c\u00f3 \u0111\u1ee7 th\u00eam 7 linh ki\u1ec7n sau:\u00a0VGA,T\u1ea2N NHI\u1ec6T, MAIN, RAM, SSD, NGU\u1ed2N , V\u1ece CASE<\/span><\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 110, + "catPath": ":110:107:2", + "name": "Intel Core i5", + "url": "\/cpu-intel-core-i5" + }, + { + "id": 2, + "catPath": ":2", + "name": "CPU - B\u1ed9 Vi X\u1eed L\u00fd", + "url": "\/cpu-bo-vi-xu-ly" + } + ] + }, + { + "id": 695, + "productId": 695, + "priceUnit": "chi\u1ebfc", + "marketPrice": 102900000, + "price": 99900000, + "price_off": 3, + "currency": "vnd", + "sale_rules": { + "price": 99900000, + "normal_price": 99900000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2024-12-30 13:16:40", + "warranty": "36 th\u00e1ng", + "productName": "CPU AMD Ryzen Threadripper 3990X (2.9GHz Turbo Up To 4.3GHz, 64 Nh\u00e2n 128 Lu\u1ed3ng, 288MB Cache, sTR4)", + "productSummary": "

Ryzen Threadripper 3990X<\/p>\r\n

Nh\u00e2n CPU: 64 Lu\u1ed3ng CPU: 128<\/p>\r\n

Socket sTR4<\/p>\r\n

T\u1ed1c \u0111\u1ed9: 2.9 GHz (4.3 GHz with boost)<\/p>\r\n

Bus Ram h\u1ed7 tr\u1ee3: DDR4 3200MHz\u00a0<\/p>", + "package_accessory": "", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_695_amd_ryzen_threadripper_3990x.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_695_amd_ryzen_threadripper_3990x.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_695_amd_ryzen_threadripper_3990x.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_695_amd_ryzen_threadripper_3990x.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_695_amd_ryzen_threadripper_3990x_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_695_amd_ryzen_threadripper_3990x_1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-amd-ryzen-threadripper-3990wx", + "brand": { + "id": 3, + "brand_index": "amd", + "name": "AMD", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/amd.jpg", + "url": "\/brand\/amd" + }, + "visit": 28479, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 5, + "total": 1 + }, + "quantity": 1, + "productSKU": "", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 118, + "catPath": ":118:108:2", + "name": "AMD Ryzen Threadripper", + "url": "\/amd-ryzen-threadripper" + } + ] + }, + { + "id": 6680, + "productId": 6680, + "priceUnit": "chi\u1ebfc", + "marketPrice": 23000000, + "price": 20990000, + "price_off": 9, + "currency": "vnd", + "sale_rules": { + "price": 20990000, + "normal_price": 20990000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2026-01-05 15:51:56", + "warranty": "36 Th\u00e1ng", + "productName": "CPU AMD Ryzen 9 9950X3D Tray (Up 5.7 GHz, 16 Nh\u00e2n 32 Lu\u1ed3ng, 128MB Cache, AM5)", + "productSummary": "

Socket:\u00a0AMD5<\/p>\r\n

S\u1ed1 l\u00f5i\/ lu\u1ed3ng:\u00a016 Nh\u00e2n, 32 Lu\u1ed3ng<\/p>\r\n

T\u1ed1c \u0111\u1ed9 x\u1eed l\u00ed t\u1ed1i \u0111a:\u00a0Up to 5.7GHz<\/p>\r\n

B\u1ed9 nh\u1edb \u0111\u1ec7m:\u00a0128 MB<\/p>\r\n

Bus\u00a0RAM h\u1ed7 tr\u1ee3:\u00a0DDR5<\/p>\r\n

M\u1ee9c ti\u00eau th\u1ee5 \u0111i\u1ec7n: 170W<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_6680_9950x3d_tray_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_6680_9950x3d_tray_ha1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_6680_9950x3d_tray_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_6680_9950x3d_tray_ha1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-amd-ryzen-9-9950x3d-tray", + "brand": { + "id": 3, + "brand_index": "amd", + "name": "AMD", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/amd.jpg", + "url": "\/brand\/amd" + }, + "visit": 126, + "rating": 0, + "reviewCount": 0, + "review": { + "rate": 0, + "total": 0 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": [], + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": [], + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 117, + "catPath": ":117:108:2", + "name": "AMD Ryzen 9", + "url": "\/cpu-amd-ryzen-9" + } + ] + }, + { + "id": 3549, + "productId": 3549, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 181990000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 181990000, + "normal_price": 181990000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2025-05-08 16:28:26", + "warranty": "36 th\u00e1ng", + "productName": "CPU AMD Ryzen Threadripper Pro 5995WX (2.7GHz Turbo Up To 4.5GHz, 64 Nh\u00e2n 128 Lu\u1ed3ng, 256MB Cache)", + "productSummary": "

CPU AMD Ryzen Threadripper Pro 5995WX<\/p>\r\n

T\u1ed1c \u0111\u1ed9: 2.7 GHz (4.5 GHz with boost)<\/p>\r\n

Bus Ram h\u1ed7 tr\u1ee3: DDR4 3200MHz<\/p>\r\n

Nh\u00e2n CPU: 64<\/p>\r\n

Lu\u1ed3ng CPU: 128<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3549_amd_threadripper_pro_5995x_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3549_amd_threadripper_pro_5995x_1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3549_amd_threadripper_pro_5995x_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3549_amd_threadripper_pro_5995x_1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3549_amd_threadripper_pro_5995x_2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3549_amd_threadripper_pro_5995x_2.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-amd-ryzen-threadripper-pro-5995wx", + "brand": { + "id": 3, + "brand_index": "amd", + "name": "AMD", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/amd.jpg", + "url": "\/brand\/amd" + }, + "visit": 7252, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 118, + "catPath": ":118:108:2", + "name": "AMD Ryzen Threadripper", + "url": "\/amd-ryzen-threadripper" + } + ] + }, + { + "id": 2518, + "productId": 2518, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 140500000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 140500000, + "normal_price": 140500000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2023-07-16 15:32:54", + "warranty": "36 th\u00e1ng", + "productName": "CPU AMD Ryzen Threadripper PRO 3995WX (2.7GHz Turbo Up To 4.2GHz, 64 Nh\u00e2n 128 Lu\u1ed3ng, 292MB Cache, sWRX8)", + "productSummary": "CPU Ryzen Threadripper Pro 3995WX\r\nS\u1ed1 nh\u00e2n: 64\r\nS\u1ed1 lu\u1ed3ng: 128\r\nXung nh\u1ecbp CPU: 2.7 - 4.2GHz (Boost Clock)\r\nTDP: 280W", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2518_amd_ryzen_threadripper_pro_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2518_amd_ryzen_threadripper_pro_1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2518_", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2518_", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2518_amd_ryzen_threadripper_pro_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2518_amd_ryzen_threadripper_pro_1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-amd-ryzen-threadripper-pro-3995wx", + "brand": { + "id": 3, + "brand_index": "amd", + "name": "AMD", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/amd.jpg", + "url": "\/brand\/amd" + }, + "visit": 5002, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 118, + "catPath": ":118:108:2", + "name": "AMD Ryzen Threadripper", + "url": "\/amd-ryzen-threadripper" + } + ] + }, + { + "id": 2517, + "productId": 2517, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 71500000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 71500000, + "normal_price": 71500000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2023-07-16 15:33:14", + "warranty": "36 th\u00e1ng", + "productName": "CPU AMD Threadripper PRO 3975WX (3.50GHz Turbo Up To 4.20GHz, 32 Nh\u00e2n 64 Lu\u1ed3ng, 146M Cache, sTRX8)", + "productSummary": "CPU Ryzen Threadripper Pro 3975WX\r\nS\u1ed1 nh\u00e2n: 32\r\nS\u1ed1 lu\u1ed3ng: 64\r\nXung nh\u1ecbp CPU: 3.9 - 4.3GHz (Boost Clock)\r\nTDP: 280W", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2517_amd_ryzen_threadripper_pro_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2517_amd_ryzen_threadripper_pro_1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2517_", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2517_", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_2517_amd_ryzen_threadripper_pro_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_2517_amd_ryzen_threadripper_pro_1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-amd-ryzen-threadripper-pro-3975wx", + "brand": { + "id": 3, + "brand_index": "amd", + "name": "AMD", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/amd.jpg", + "url": "\/brand\/amd" + }, + "visit": 3331, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 118, + "catPath": ":118:108:2", + "name": "AMD Ryzen Threadripper", + "url": "\/amd-ryzen-threadripper" + } + ] + }, + { + "id": 6170, + "productId": 6170, + "priceUnit": "chi\u1ebfc", + "marketPrice": 50000000, + "price": 45500000, + "price_off": 9, + "currency": "vnd", + "sale_rules": { + "price": 45500000, + "normal_price": 45500000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2025-08-12 15:05:18", + "warranty": "36 Th\u00e1ng", + "productName": "CPU AMD Ryzen Threadripper 9960X Tray (Up 5.4 GHz, 24 Nh\u00e2n 48 Lu\u1ed3ng, 128MB Cache, sTR5)", + "productSummary": "

AMD Ryzen Threadripper\u00a09960X Tray<\/p>\r\n

Socket:\u00a0sTR5<\/p>\r\n

S\u1ed1 nh\u00e2n:\u00a024<\/p>\r\n

S\u1ed1 lu\u1ed3ng: 48<\/p>\r\n

T\u1ed1c \u0111\u1ed9 x\u1eed l\u00ed t\u1ed1i \u0111a:\u00a0Up to\u00a05.4GHz<\/p>\r\n

B\u1ed9 nh\u1edb \u0111\u1ec7m: 128MB<\/p>\r\n

Bus\u00a0RAM h\u1ed7 tr\u1ee3:\u00a0DDR5<\/p>\r\n

M\u1ee9c ti\u00eau th\u1ee5 \u0111i\u1ec7n:\u00a0350W<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_6170_threadripper_9960x_tray_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_6170_threadripper_9960x_tray_ha1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_6170_threadripper_9960x_tray_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_6170_threadripper_9960x_tray_ha1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_6170_threadripper_9960x_tray_ha4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_6170_threadripper_9960x_tray_ha4.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_6170_threadripper_9960x_tray_ha3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_6170_threadripper_9960x_tray_ha3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_6170_threadripper_9960x_tray_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_6170_threadripper_9960x_tray_ha2.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-amd-ryzen-threadripper-9960x", + "brand": { + "id": 3, + "brand_index": "amd", + "name": "AMD", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/amd.jpg", + "url": "\/brand\/amd" + }, + "visit": 910, + "rating": 0, + "reviewCount": 0, + "review": { + "rate": 0, + "total": 0 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": [], + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": [], + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 118, + "catPath": ":118:108:2", + "name": "AMD Ryzen Threadripper", + "url": "\/amd-ryzen-threadripper" + } + ] + }, + { + "id": 5870, + "productId": 5870, + "priceUnit": "chi\u1ebfc", + "marketPrice": 18000000, + "price": 16990000, + "price_off": 6, + "currency": "vnd", + "sale_rules": { + "price": 16990000, + "normal_price": 16990000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2025-06-30 14:15:47", + "warranty": "36 Th\u00e1ng", + "productName": "CPU AMD Ryzen 9 9900X3D (Up 5.5 GHz, 12 Nh\u00e2n 24 Lu\u1ed3ng, 128MB Cache, AM5)", + "productSummary": "

CPU\u00a0AMD\u00a0Ryzen 9 9900X3D<\/p>\r\n

Socket:\u00a0AMD5<\/p>\r\n

S\u1ed1 l\u00f5i\/ lu\u1ed3ng:\u00a012 Nh\u00e2n,\u00a024 Lu\u1ed3ng<\/p>\r\n

T\u1ed1c \u0111\u1ed9 x\u1eed l\u00ed t\u1ed1i \u0111a:\u00a0Up to 5.5GHz<\/p>\r\n

B\u1ed9 nh\u1edb \u0111\u1ec7m:\u00a0128 MB<\/p>\r\n

Bus\u00a0RAM h\u1ed7 tr\u1ee3:\u00a0DDR5<\/p>\r\n

M\u1ee9c ti\u00eau th\u1ee5 \u0111i\u1ec7n: 120W<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5870_ryzen_9_9900x3d_ha3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5870_ryzen_9_9900x3d_ha3.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5870_ryzen_9_9900x3d_ha3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5870_ryzen_9_9900x3d_ha3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5870_ryzen_9_9900x3d_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5870_ryzen_9_9900x3d_ha2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5870_ryzen_9_9900x3d_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5870_ryzen_9_9900x3d_ha1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-amd-ryzen-9-9900x3d", + "brand": { + "id": 3, + "brand_index": "amd", + "name": "AMD", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/amd.jpg", + "url": "\/brand\/amd" + }, + "visit": 1650, + "rating": 0, + "reviewCount": 0, + "review": { + "rate": 0, + "total": 0 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 1, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": [], + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": [], + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 117, + "catPath": ":117:108:2", + "name": "AMD Ryzen 9", + "url": "\/cpu-amd-ryzen-9" + } + ] + }, + { + "id": 5869, + "productId": 5869, + "priceUnit": "chi\u1ebfc", + "marketPrice": 23000000, + "price": 20990000, + "price_off": 9, + "currency": "vnd", + "sale_rules": { + "price": 20990000, + "normal_price": 20990000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2026-01-05 15:52:16", + "warranty": "36 Th\u00e1ng", + "productName": "CPU AMD Ryzen 9 9950X3D (Up 5.7 GHz, 16 Nh\u00e2n 32 Lu\u1ed3ng, 128MB Cache, AM5)", + "productSummary": "

Socket:\u00a0AMD5<\/p>\r\n

S\u1ed1 l\u00f5i\/ lu\u1ed3ng:\u00a016 Nh\u00e2n, 32 Lu\u1ed3ng<\/p>\r\n

T\u1ed1c \u0111\u1ed9 x\u1eed l\u00ed t\u1ed1i \u0111a:\u00a0Up to 5.7GHz<\/p>\r\n

B\u1ed9 nh\u1edb \u0111\u1ec7m:\u00a0128 MB<\/p>\r\n

Bus\u00a0RAM h\u1ed7 tr\u1ee3:\u00a0DDR5<\/p>\r\n

M\u1ee9c ti\u00eau th\u1ee5 \u0111i\u1ec7n: 170W<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5869_amd_ryzen_9_9950x3d_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5869_amd_ryzen_9_9950x3d_ha1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5869_amd_ryzen_9_9950x3d_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5869_amd_ryzen_9_9950x3d_ha1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5869_amd_ryzen_9_9950x3d_ha3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5869_amd_ryzen_9_9950x3d_ha3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5869_amd_ryzen_9_9950x3d_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5869_amd_ryzen_9_9950x3d_ha2.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-amd-ryzen-9-9950x3d", + "brand": { + "id": 3, + "brand_index": "amd", + "name": "AMD", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/amd.jpg", + "url": "\/brand\/amd" + }, + "visit": 4846, + "rating": 0, + "reviewCount": 0, + "review": { + "rate": 0, + "total": 0 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 1, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": [], + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": [], + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 117, + "catPath": ":117:108:2", + "name": "AMD Ryzen 9", + "url": "\/cpu-amd-ryzen-9" + } + ] + }, + { + "id": 5570, + "productId": 5570, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 8490000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 8490000, + "normal_price": 8490000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2025-12-16 09:35:45", + "warranty": "36 th\u00e1ng", + "productName": "CPU AMD Ryzen 9 7900X Tray (Up To 5.6GHz, 12 Nh\u00e2n 24 Lu\u1ed3ng, 64MB Cache, AM5)", + "productSummary": "

Socket:\u00a0AMD5<\/p>\r\n

S\u1ed1 l\u00f5i\/ lu\u1ed3ng:\u00a012 Nh\u00e2n,\u00a024 Lu\u1ed3ng<\/p>\r\n

T\u1ed1c \u0111\u1ed9 x\u1eed l\u00ed t\u1ed1i \u0111a:\u00a0Up to 5.6GHz<\/p>\r\n

B\u1ed9 nh\u1edb \u0111\u1ec7m:\u00a064 MB<\/p>\r\n

Bus\u00a0RAM h\u1ed7 tr\u1ee3:\u00a0DDR5<\/p>\r\n

M\u1ee9c ti\u00eau th\u1ee5 \u0111i\u1ec7n:\u00a0170W<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5570_ryzen_9_7900x_tray_t12_2025.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5570_ryzen_9_7900x_tray_t12_2025.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5570_ryzen_9_7900x_tray_t12_2025.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5570_ryzen_9_7900x_tray_t12_2025.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5570_ryzen_9_7900x_tray.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5570_ryzen_9_7900x_tray.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-amd-ryzen-9-7900x-tray", + "brand": { + "id": 3, + "brand_index": "amd", + "name": "AMD", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/amd.jpg", + "url": "\/brand\/amd" + }, + "visit": 4662, + "rating": 0, + "reviewCount": 0, + "review": { + "rate": 0, + "total": 0 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "other": [ + { + "id": 0, + "title": "

\u2b50\u00a0Gi\u00e1 khuy\u1ebfn m\u1ea1i ch\u1ec9 c\u00f2n\u00a08.490.000\u0111<\/span>\u00a0\u00e1p d\u1ee5ng khi build PC t\u1ea1i Ho\u00e0ng H\u00e0 PC<\/strong><\/span><\/p>\r\n

\u2b50 Gi\u00e1 khi build\u00a0m\u00e1y\u00a0kh\u00f4ng VGA l\u00e0:\u00a08.990.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb l\u00e0:\u00a09.990.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c<\/span><\/p>\r\n

\u2b50 Ch\u01b0\u01a1ng tr\u00ecnh \u00e1p d\u1ee5ng v\u1edbi kh\u00e1ch h\u00e0ng Build PC c\u00f3 \u0111\u1ee7 th\u00eam 7 linh ki\u1ec7n sau:\u00a0VGA,T\u1ea2N NHI\u1ec6T N\u01af\u1edaC AIO, MAIN (Z690 ho\u1eb7c Z790), RAM, SSD, NGU\u1ed2N , V\u1ece CASE<\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ], + "all": [ + { + "id": 0, + "title": "

\u2b50\u00a0Gi\u00e1 khuy\u1ebfn m\u1ea1i ch\u1ec9 c\u00f2n\u00a08.490.000\u0111<\/span>\u00a0\u00e1p d\u1ee5ng khi build PC t\u1ea1i Ho\u00e0ng H\u00e0 PC<\/strong><\/span><\/p>\r\n

\u2b50 Gi\u00e1 khi build\u00a0m\u00e1y\u00a0kh\u00f4ng VGA l\u00e0:\u00a08.990.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb l\u00e0:\u00a09.990.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c<\/span><\/p>\r\n

\u2b50 Ch\u01b0\u01a1ng tr\u00ecnh \u00e1p d\u1ee5ng v\u1edbi kh\u00e1ch h\u00e0ng Build PC c\u00f3 \u0111\u1ee7 th\u00eam 7 linh ki\u1ec7n sau:\u00a0VGA,T\u1ea2N NHI\u1ec6T N\u01af\u1edaC AIO, MAIN (Z690 ho\u1eb7c Z790), RAM, SSD, NGU\u1ed2N , V\u1ece CASE<\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": [], + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": [], + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 117, + "catPath": ":117:108:2", + "name": "AMD Ryzen 9", + "url": "\/cpu-amd-ryzen-9" + } + ] + }, + { + "id": 5304, + "productId": 5304, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 12990000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 12990000, + "normal_price": 12990000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2025-04-14 10:06:16", + "warranty": "36 Th\u00e1ng", + "productName": "CPU AMD Ryzen 9 9950X Tray (Up 5.7 GHz, 16 Nh\u00e2n 32 Lu\u1ed3ng, 64MB Cache, AM5)", + "productSummary": "

CPU\u00a0AMD\u00a0Ryzen 9 9950X Tray<\/p>\r\n

Socket:\u00a0AMD5<\/p>\r\n

S\u1ed1 l\u00f5i\/ lu\u1ed3ng:\u00a016 Nh\u00e2n,\u00a032 Lu\u1ed3ng<\/p>\r\n

T\u1ed1c \u0111\u1ed9 x\u1eed l\u00ed t\u1ed1i \u0111a:\u00a0Up to 5.7GHz<\/p>\r\n

B\u1ed9 nh\u1edb \u0111\u1ec7m:\u00a064 MB<\/p>\r\n

Bus\u00a0RAM h\u1ed7 tr\u1ee3:\u00a0DDR5<\/p>\r\n

M\u1ee9c ti\u00eau th\u1ee5 \u0111i\u1ec7n: 170W<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5304_cpu_9950x_sale_t4_2025_s2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5304_cpu_9950x_sale_t4_2025_s2.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5304_cpu_9950x_sale_t4_2025_s2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5304_cpu_9950x_sale_t4_2025_s2.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-amd-ryzen-9-9950x", + "brand": { + "id": 3, + "brand_index": "amd", + "name": "AMD", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/amd.jpg", + "url": "\/brand\/amd" + }, + "visit": 31919, + "rating": 5, + "reviewCount": 1, + "review": { + "rate": 5, + "total": 1 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "other": [ + { + "id": 0, + "title": "

\u2b50 Gi\u00e1 khuy\u1ebfn m\u00e3i CPU Ryzen 9\u00a09950X Tray ch\u1ec9 c\u00f2n\u00a012.990.000\u0111<\/span>\u00a0\u00e1p d\u1ee5ng khi build PC t\u1ea1i Ho\u00e0ng H\u00e0 PC (VGA t\u1eeb RTX 3060 tr\u1edf l\u00ean)<\/strong><\/span><\/p>\r\n

\u2b50 Gi\u00e1\u00a0CPU Ryzen 9\u00a09950X Tray khi build\u00a0m\u00e1y\u00a0kh\u00f4ng VGA l\u00e0:\u00a013.990.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb CPU Ryzen 9\u00a09950X Tray l\u00e0:\u00a014.500.000\u0111<\/span><\/strong><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c<\/span><\/p>\r\n

\u2b50 Ch\u01b0\u01a1ng tr\u00ecnh \u00e1p d\u1ee5ng v\u1edbi kh\u00e1ch h\u00e0ng Build PC c\u00f3 \u0111\u1ee7 th\u00eam 7 linh ki\u1ec7n sau:\u00a0VGA,T\u1ea2N NHI\u1ec6T, MAIN, RAM, SSD, NGU\u1ed2N , V\u1ece CASE<\/span><\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ], + "all": [ + { + "id": 0, + "title": "

\u2b50 Gi\u00e1 khuy\u1ebfn m\u00e3i CPU Ryzen 9\u00a09950X Tray ch\u1ec9 c\u00f2n\u00a012.990.000\u0111<\/span>\u00a0\u00e1p d\u1ee5ng khi build PC t\u1ea1i Ho\u00e0ng H\u00e0 PC (VGA t\u1eeb RTX 3060 tr\u1edf l\u00ean)<\/strong><\/span><\/p>\r\n

\u2b50 Gi\u00e1\u00a0CPU Ryzen 9\u00a09950X Tray khi build\u00a0m\u00e1y\u00a0kh\u00f4ng VGA l\u00e0:\u00a013.990.000\u0111<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb CPU Ryzen 9\u00a09950X Tray l\u00e0:\u00a014.500.000\u0111<\/span><\/strong><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c<\/span><\/p>\r\n

\u2b50 Ch\u01b0\u01a1ng tr\u00ecnh \u00e1p d\u1ee5ng v\u1edbi kh\u00e1ch h\u00e0ng Build PC c\u00f3 \u0111\u1ee7 th\u00eam 7 linh ki\u1ec7n sau:\u00a0VGA,T\u1ea2N NHI\u1ec6T, MAIN, RAM, SSD, NGU\u1ed2N , V\u1ece CASE<\/span><\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": [], + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": [], + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 117, + "catPath": ":117:108:2", + "name": "AMD Ryzen 9", + "url": "\/cpu-amd-ryzen-9" + } + ] + }, + { + "id": 3550, + "productId": 3550, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 92000000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 92000000, + "normal_price": 92000000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2025-05-08 16:27:51", + "warranty": "36 th\u00e1ng", + "productName": "CPU AMD Threadripper PRO 5975WX (3.60GHz Turbo Up To 4.50GHz, 32 Nh\u00e2n 64 Lu\u1ed3ng, 128MB Cache, sTRX8)", + "productSummary": "

CPU Ryzen Threadripper Pro 5975WX<\/p>\r\n

S\u1ed1 nh\u00e2n: 32<\/p>\r\n

S\u1ed1 lu\u1ed3ng: 64<\/p>\r\n

Xung nh\u1ecbp CPU: 3.6 - 4.5GHz (Boost Clock)<\/p>\r\n

TDP: 280W<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3550_amd_threadripper_pro_5995x_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3550_amd_threadripper_pro_5995x_1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3550_", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3550_", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3550_amd_threadripper_pro_5995x_2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3550_amd_threadripper_pro_5995x_2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3550_amd_threadripper_pro_5995x_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3550_amd_threadripper_pro_5995x_1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-amd-ryzen-threadripper-pro-5975wx", + "brand": { + "id": 3, + "brand_index": "amd", + "name": "AMD", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/amd.jpg", + "url": "\/brand\/amd" + }, + "visit": 4550, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 118, + "catPath": ":118:108:2", + "name": "AMD Ryzen Threadripper", + "url": "\/amd-ryzen-threadripper" + } + ] + }, + { + "id": 3551, + "productId": 3551, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 65990000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 65990000, + "normal_price": 65990000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2025-05-08 16:27:19", + "warranty": "36 th\u00e1ng", + "productName": "CPU AMD Ryzen Threadripper PRO 5965WX (3.80GHz Turbo Up To 4.50GHz, 24 Nh\u00e2n 48 Lu\u1ed3ng, 128MB Cache,sTRX8)", + "productSummary": "

CPU Ryzen Threadripper Pro 5965WX<\/p>\r\n

S\u1ed1 nh\u00e2n: 24<\/p>\r\n

S\u1ed1 lu\u1ed3ng: 48<\/p>\r\n

Xung nh\u1ecbp CPU: 3.8 - 4.5GHz (Boost Clock)<\/p>\r\n

TDP: 280W<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3551_amd_threadripper_pro_5995x_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3551_amd_threadripper_pro_5995x_1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3551_", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3551_", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3551_amd_threadripper_pro_5995x_2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3551_amd_threadripper_pro_5995x_2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3551_amd_threadripper_pro_5995x_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3551_amd_threadripper_pro_5995x_1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/cpu-amd-ryzen-threadripper-pro-5965wx", + "brand": { + "id": 3, + "brand_index": "amd", + "name": "AMD", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/amd.jpg", + "url": "\/brand\/amd" + }, + "visit": 5008, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 118, + "catPath": ":118:108:2", + "name": "AMD Ryzen Threadripper", + "url": "\/amd-ryzen-threadripper" + } + ] + } + ], + "paging_collection": [ + { + "name": 1, + "url": "\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&pc_part_id=&sort=order", + "is_active": 1 + }, + { + "name": 2, + "url": "\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&pc_part_id=&sort=order&page=2", + "is_active": 0 + }, + { + "name": 3, + "url": "\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=2&pc_part_id=&sort=order&page=3", + "is_active": 0 + } + ], + "paging_count": 3 + }, + { + "id": 3, + "name": "Bo m\u1ea1ch ch\u1ee7", + "attribute_filter_list": [ + { + "name": "Socket", + "filter_code": "", + "is_selected": 0, + "value_list": [ + { + "id": 69, + "name": "Intel LGA 2011", + "api_key": "intel-lga-2011", + "description": "", + "count": 1, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=69&sort=order" + }, + { + "id": 571, + "name": "Intel LGA 1700", + "api_key": "intel-lga-1700", + "description": "", + "count": 43, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=571&sort=order" + }, + { + "id": 65, + "name": "AM4", + "api_key": "am4-1", + "description": "", + "count": 3, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=65&sort=order" + }, + { + "id": 679, + "name": "Intel LGA 1851", + "api_key": "intel-lga-1851", + "description": "", + "count": 62, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=679&sort=order" + }, + { + "id": 592, + "name": "AM5", + "api_key": "am5", + "description": "", + "count": 55, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=592&sort=order" + }, + { + "id": 681, + "name": "sWRX8", + "api_key": "swrx8", + "description": "", + "count": 1, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=681&sort=order" + }, + { + "id": 684, + "name": "sTR5", + "api_key": "str5", + "description": "", + "count": 3, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=684&sort=order" + } + ] + }, + { + "name": "Chipset", + "filter_code": "", + "is_selected": 0, + "value_list": [ + { + "id": 582, + "name": "Intel H610", + "api_key": "intel-h610", + "description": "", + "count": 3, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=582&sort=order" + }, + { + "id": 705, + "name": "A520", + "api_key": "a520", + "description": "", + "count": 1, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=705&sort=order" + }, + { + "id": 696, + "name": "A620", + "api_key": "a620", + "description": "", + "count": 1, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=696&sort=order" + }, + { + "id": 687, + "name": "AMD WRX90", + "api_key": "amd-wrx90", + "description": "", + "count": 1, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=687&sort=order" + }, + { + "id": 685, + "name": "AMD TRX50", + "api_key": "amd-trx50", + "description": "", + "count": 2, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=685&sort=order" + }, + { + "id": 683, + "name": "AMD X870", + "api_key": "amd-x870", + "description": "", + "count": 32, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=683&sort=order" + }, + { + "id": 682, + "name": "AMD WRX80", + "api_key": "amd-wrx80", + "description": "", + "count": 1, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=682&sort=order" + }, + { + "id": 663, + "name": "Intel Z890", + "api_key": "intel-z890", + "description": "", + "count": 53, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=663&sort=order" + }, + { + "id": 605, + "name": "Intel B760", + "api_key": "intel-b760", + "description": "", + "count": 15, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=605&sort=order" + }, + { + "id": 264, + "name": "AMD B450", + "api_key": "amd-b450", + "description": "", + "count": 1, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=264&sort=order" + }, + { + "id": 680, + "name": "Intel B860", + "api_key": "intel-b860", + "description": "", + "count": 8, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=680&sort=order" + }, + { + "id": 586, + "name": "AMD X570", + "api_key": "amd-x570", + "description": "", + "count": 1, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=586&sort=order" + }, + { + "id": 260, + "name": "Intel C612", + "api_key": "intel-c612", + "description": "", + "count": 1, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=260&sort=order" + }, + { + "id": 593, + "name": "AMD X670", + "api_key": "amd-x670", + "description": "", + "count": 13, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=593&sort=order" + }, + { + "id": 595, + "name": "Intel Z790", + "api_key": "intel-z790", + "description": "", + "count": 21, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=595&sort=order" + }, + { + "id": 596, + "name": "AMD B650", + "api_key": "amd-b650", + "description": "", + "count": 10, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=596&sort=order" + }, + { + "id": 572, + "name": "Intel Z690", + "api_key": "intel-z690", + "description": "", + "count": 4, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=572&sort=order" + } + ] + }, + { + "name": "Khe C\u1eafm Ram", + "filter_code": "", + "is_selected": 0, + "value_list": [ + { + "id": 255, + "name": "2 Khe C\u1eafm", + "api_key": "2-khe-cam", + "description": "", + "count": 7, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=255&sort=order" + }, + { + "id": 256, + "name": "4 Khe C\u1eafm", + "api_key": "4-khe-cam", + "description": "", + "count": 157, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=256&sort=order" + }, + { + "id": 257, + "name": "8 Khe C\u1eafm", + "api_key": "8-khe-cam", + "description": "", + "count": 4, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=257&sort=order" + } + ] + }, + { + "name": "Ki\u1ec3u K\u00edch Th\u01b0\u1edbc", + "filter_code": "", + "is_selected": 0, + "value_list": [ + { + "id": 688, + "name": "EEB", + "api_key": "eeb", + "description": "", + "count": 1, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=688&sort=order" + }, + { + "id": 385, + "name": "M-ATX", + "api_key": "m-atx", + "description": "", + "count": 34, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=385&sort=order" + }, + { + "id": 386, + "name": "Mini ITX", + "api_key": "mini-itx", + "description": "", + "count": 2, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=386&sort=order" + }, + { + "id": 387, + "name": "ATX", + "api_key": "atx", + "description": "", + "count": 111, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=387&sort=order" + }, + { + "id": 388, + "name": "E-ATX", + "api_key": "e-atx", + "description": "", + "count": 16, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=388&sort=order" + }, + { + "id": 389, + "name": "Micro ATX", + "api_key": "micro-atx", + "description": "", + "count": 4, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=389&sort=order" + }, + { + "id": 686, + "name": "CEB", + "api_key": "ceb", + "description": "", + "count": 1, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&filter=686&sort=order" + } + ] + } + ], + "brand_filter_list": [ + { + "id": 12, + "name": "ASROCK", + "brand_index": "asrock", + "image": "asrock.jpg", + "count": 23, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&brand=12&category_id=3&sort=order" + }, + { + "id": 2, + "name": "ASUS", + "brand_index": "asus", + "image": "asus.jpg", + "count": 57, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&brand=2&category_id=3&sort=order" + }, + { + "id": 72, + "name": "COLORFUL", + "brand_index": "colorful", + "image": "colorful.jpg", + "count": 11, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&brand=72&category_id=3&sort=order" + }, + { + "id": 6, + "name": "GIGABYTE", + "brand_index": "gigabyte", + "image": "gigabyte.jpg", + "count": 46, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&brand=6&category_id=3&sort=order" + }, + { + "id": 7, + "name": "MSI", + "brand_index": "msi", + "image": "msi.jpg", + "count": 31, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&brand=7&category_id=3&sort=order" + }, + { + "id": 38, + "name": "SUPERMICRO", + "brand_index": "supermicro", + "image": "supermicro.jpg", + "count": 1, + "is_selected": false, + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&brand=38&category_id=3&sort=order" + } + ], + "price_filter_list": [ + { + "min": 0, + "max": 2000000, + "count": 6, + "is_selected": 0, + "name": "D\u01b0\u1edbi 2 tri\u1ec7u", + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&max=2000000&sort=order" + }, + { + "min": 2000000, + "max": 4000000, + "count": 20, + "is_selected": 0, + "name": "2 tri\u1ec7u - 4 tri\u1ec7u", + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&max=4000000&min=2000000&sort=order" + }, + { + "min": 4000000, + "max": 8000000, + "count": 44, + "is_selected": 0, + "name": "4 tri\u1ec7u - 8 tri\u1ec7u", + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&max=8000000&min=4000000&sort=order" + }, + { + "min": 8000000, + "max": 16000000, + "count": 62, + "is_selected": 0, + "name": "8 tri\u1ec7u - 16 tri\u1ec7u", + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&max=16000000&min=8000000&sort=order" + }, + { + "min": 16000000, + "max": 0, + "count": 25, + "is_selected": 0, + "name": "Tr\u00ean 16 tri\u1ec7u", + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&min=16000000&sort=order" + } + ], + "sort_by_collection": [ + { + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&sort=new", + "key": "new", + "name": "M\u1edbi nh\u1ea5t" + }, + { + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&sort=price-asc", + "key": "price-asc", + "name": "Gi\u00e1 t\u0103ng d\u1ea7n" + }, + { + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&sort=price-desc", + "key": "price-desc", + "name": "Gi\u00e1 gi\u1ea3m d\u1ea7n" + }, + { + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&sort=view", + "key": "view", + "name": "L\u01b0\u1ee3t xem" + }, + { + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&sort=comment", + "key": "comment", + "name": "Trao \u0111\u1ed5i" + }, + { + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&sort=rating", + "key": "rating", + "name": "\u0110\u00e1nh gi\u00e1" + }, + { + "url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&sort=name", + "key": "name", + "name": "T\u00ean A->Z" + } + ], + "sort_option": "order", + "search_query": "", + "search_url": "https:\/\/hoanghapc.vn\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&sort=order", + "product_list": [ + { + "id": 3661, + "productId": 3661, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 5550000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 5550000, + "normal_price": 5550000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2025-07-21 15:08:49", + "warranty": "36 th\u00e1ng", + "productName": "Mainboard Gigabyte Z790 AORUS ELITE AX DDR5 ( WIFI + Bluetooth )", + "productSummary": "

Intel\u00ae\u00a0Socket LGA 1700\uff1aSupport 14th, 13th and 12th Gen Series Processors<\/p>\r\n

Unparalleled Performance\uff1aTwin 16*+1+2 Phases Digital VRM Solution<\/p>\r\n

Dual Channel DDR5\uff1a4*SMD DIMMs with XMP 3.0 Memory Module Support<\/p>\r\n

Next Generation Storage\uff1a4*PCIe 4.0 x4 M.2 Connectors<\/p>\r\n

Advanced Thermal Design & M.2 Thermal Guard III: To Ensure VRM Power Stability & M.2 SSD Performance<\/p>\r\n

EZ-Latch Plus\uff1aM.2 Connectors with Quick Release & Screwless Design<\/p>\r\n

Fast Networks\uff1a2.5GbE LAN & Wi-Fi 6E 802.11ax<\/p>\r\n

Extended Connectivity\uff1aDP, HDMI, Front USB-C\u00ae\u00a010Gb\/s, Rear USB-C\u00ae\u00a020Gb\/s<\/p>\r\n

Smart Fan 6\uff1aFeatures Multiple Temperature Sensors, Hybrid Fan Headers with FAN STOP<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3661_z790_aorus_elite_ax_ha4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3661_z790_aorus_elite_ax_ha4.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3661_z790_aorus_elite_ax_ha4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3661_z790_aorus_elite_ax_ha4.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3661_gigabyte__z790_aorus_elite_ax_ddr5_hatt3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3661_gigabyte__z790_aorus_elite_ax_ddr5_hatt3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3661_gigabyte__z790_aorus_elite_ax_ddr5_hatt2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3661_gigabyte__z790_aorus_elite_ax_ddr5_hatt2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3661_gigabyte__z790_aorus_elite_ax_ddr5_hatt1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3661_gigabyte__z790_aorus_elite_ax_ddr5_hatt1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3661_z790_aorus_elite_ax_ha5.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3661_z790_aorus_elite_ax_ha5.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3661_z790_aorus_elite_ax_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3661_z790_aorus_elite_ax_ha2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3661_z790_aorus_elite_ax_ha6.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3661_z790_aorus_elite_ax_ha6.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3661_z790_aorus_elite_ax_ha3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3661_z790_aorus_elite_ax_ha3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3661_z790_aorus_elite_ax_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3661_z790_aorus_elite_ax_ha1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/mainboard-gigabyte-z790-aorus-elite-ax", + "brand": { + "id": 6, + "brand_index": "gigabyte", + "name": "GIGABYTE", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/gigabyte.jpg", + "url": "\/brand\/gigabyte" + }, + "visit": 23632, + "rating": 5, + "reviewCount": 1, + "review": { + "rate": 5, + "total": 1 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "other": [ + { + "id": 0, + "title": "

\u2b50\u00a0Gi\u00e1 khuy\u1ebfn m\u00e3i\u00a0GIGABYTE\u00a0Z790 AORUS ELITE AX DDR5\u00a0ch\u1ec9 c\u00f2n\u00a05.550.000\u0111<\/span>\u00a0\u00e1p d\u1ee5ng khi mua k\u00e8m CPU<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb\u00a0GIGABYTE\u00a0Z790 AORUS ELITE AX DDR5<\/strong> l\u00e0:\u00a05.990.000\u0111<\/span><\/strong><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c<\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ], + "all": [ + { + "id": 0, + "title": "

\u2b50\u00a0Gi\u00e1 khuy\u1ebfn m\u00e3i\u00a0GIGABYTE\u00a0Z790 AORUS ELITE AX DDR5\u00a0ch\u1ec9 c\u00f2n\u00a05.550.000\u0111<\/span>\u00a0\u00e1p d\u1ee5ng khi mua k\u00e8m CPU<\/strong><\/span><\/span><\/p>\r\n

\u2b50 Gi\u00e1 b\u00e1n l\u1ebb\u00a0GIGABYTE\u00a0Z790 AORUS ELITE AX DDR5<\/strong> l\u00e0:\u00a05.990.000\u0111<\/span><\/strong><\/span><\/p>\r\n

\u2b50 L\u01afU \u00dd: Ch\u01b0\u01a1ng tr\u00ecnh kh\u00f4ng \u00e1p d\u1ee5ng c\u1ed9ng d\u1ed3n v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c<\/span><\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 163, + "catPath": ":163:123:3", + "name": "Mainboard Intel Z790", + "url": "\/mainboard-intel-z790" + }, + { + "id": 3, + "catPath": ":3", + "name": "Mainboard - Bo M\u1ea1ch Ch\u1ee7", + "url": "\/main-bo-mach-chu" + }, + { + "id": 123, + "catPath": ":123:3", + "name": "Mainboard Intel", + "url": "\/mainboard-intel" + } + ] + }, + { + "id": 3653, + "productId": 3653, + "priceUnit": "chi\u1ebfc", + "marketPrice": 5500000, + "price": 4790000, + "price_off": 13, + "currency": "vnd", + "sale_rules": { + "price": 4790000, + "normal_price": 4790000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2025-09-12 16:53:56", + "warranty": "36 Th\u00e1ng", + "productName": "Mainboard MSI PRO Z790-P WIFI DDR4 (Intel Z790, Socket 1700, ATX, 4 khe Ram DDR4)", + "productSummary": "

H\u1ed7 tr\u1ee3 vi x\u1eed l\u00fd Intel\u00ae\u00a0Core\u2122 \/ Pentium\u00ae\u00a0\/ Celeron\u00ae\u00a0th\u1ebf h\u1ec7 12 v\u00e0 13 v\u00e0 14 s\u1eed d\u1ee5ng socket LGA 1700<\/p>\r\n

H\u1ed7 tr\u1ee3 b\u1ed9 nh\u1edb DDR4, t\u1ed1c \u0111\u1ed9 l\u00ean \u0111\u1ebfn 5333+(OC) MHz<\/p>\r\n

Thi\u1ebft k\u1ebf c\u1ea5p \u0111i\u1ec7n t\u0103ng c\u01b0\u1eddng: Thi\u1ebft k\u1ebf c\u1ea5p \u0111i\u1ec7n 14+1+1 DRPS v\u1edbi 55A DrMOS<\/strong><\/span>, hai c\u1ed5ng 8-pin c\u1ea5p \u0111i\u1ec7n cho CPU, Core Boost, Memory Boost<\/p>\r\n

Gi\u1ea3i ph\u00e1p t\u1ea3n nhi\u1ec7t cao c\u1ea5p: T\u1ea3n nhi\u1ec7t m\u1edf r\u1ed9ng, mi\u1ebfng d\u00e1n t\u1ea3n nhi\u1ec7t 7W\/mK cho MOSFET, mi\u1ebfng d\u00e1n t\u1ea3n nhi\u1ec7t cho cu\u1ed9n c\u1ea3m v\u00e0 gi\u1ea3i ph\u00e1p t\u1ea3n nhi\u1ec7t khe M.2 Shield Frozr \u0111\u01b0\u1ee3c ch\u1ebf t\u1ea1o cho h\u1ec7 th\u1ed1ng hi\u1ec7u su\u1ea5t cao chi\u1ebfn game kh\u00f4ng ng\u1eebng<\/p>\r\n

B\u1ea3ng m\u1ea1ch PCB cao c\u1ea5p: b\u1ea3ng m\u1ea1ch PCB 6 l\u1edbp v\u1edbi l\u1edbp \u0111\u1ed3ng d\u00e0y 2oz \u0111\u01b0\u1ee3c ch\u1ebf t\u1ea1o v\u1edbi v\u1eadt li\u1ec7u chu\u1ea9n m\u00e1y ch\u1ee7<\/p>\r\n

Tr\u1ea3i nghi\u1ec7m game si\u00eau t\u1ed1c: Khe PCIe 5.0, Lightning Gen 4 x4 M.2, USB 3.2 Gen 2x2<\/p>\r\n

Intel Turbo USB 3.2 Gen 2: \u0110\u01b0\u1ee3c trang b\u1ecb chip \u0111i\u1ec1u khi\u1ec3n Intel USB 3.2 Gen2, Turbo USB \u0111\u1ea3m b\u1ea3o k\u1ebft n\u1ed1i kh\u00f4ng gi\u00e1n \u0111o\u1ea1n v\u1edbi t\u1ed1c \u0111\u1ed9 c\u1ed5ng USB \u1ed5n \u0111\u1ecbnh v\u00e0 v\u1edbi t\u1ed1c \u0111\u1ed9 nhanh h\u01a1n<\/p>\r\n

2.5G LAN v\u00e0 Intel Wi-Fi 6E: Gi\u1ea3i ph\u00e1p m\u1ea1ng \u0111\u01b0\u1ee3c n\u00e2ng c\u1ea5p cho ng\u01b0\u1eddi d\u00f9ng l\u00e0m vi\u1ec7c chuy\u00ean nghi\u1ec7p v\u00e0 c\u00e1c t\u00e1c v\u1ee5. \u0110em \u0111\u1ebfn k\u1ebft n\u1ed1i m\u1ea1ng an to\u00e0n, \u1ed5n \u0111\u1ecbnh v\u00e0 nhanh ch\u00f3ng h\u01a1n<\/p>\r\n

AUDIO BOOST: Chi\u1ec1u chu\u1ed9ng \u0111\u00f4i tai c\u1ee7a b\u1ea1n v\u1edbi ch\u1ea5t \u00e2m chu\u1ea9n ph\u00f2ng thu \u0111em \u0111\u1ebfn tr\u1ea3i nghi\u1ec7m \u00e2m thanh ch\u00e2n th\u1ef1c<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3653_msi_pro_z790_p_wifi_ddr4_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3653_msi_pro_z790_p_wifi_ddr4_1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3653_msi_pro_z790_p_wifi_ddr4_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3653_msi_pro_z790_p_wifi_ddr4_1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3653_msi_pro_z790_p_wifi_ddr4_2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3653_msi_pro_z790_p_wifi_ddr4_2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3653_msi_pro_z790_p_wifi_ddr4_3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3653_msi_pro_z790_p_wifi_ddr4_3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3653_pro_z790_p_wifi_ddr4_ha5.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3653_pro_z790_p_wifi_ddr4_ha5.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3653_msi_pro_z790_p_wifi_ddr4_4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3653_msi_pro_z790_p_wifi_ddr4_4.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/mainboard-msi-pro-z790-p-wifi-ddr4", + "brand": { + "id": 7, + "brand_index": "msi", + "name": "MSI", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/msi.jpg", + "url": "\/brand\/msi" + }, + "visit": 16981, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 163, + "catPath": ":163:123:3", + "name": "Mainboard Intel Z790", + "url": "\/mainboard-intel-z790" + }, + { + "id": 3, + "catPath": ":3", + "name": "Mainboard - Bo M\u1ea1ch Ch\u1ee7", + "url": "\/main-bo-mach-chu" + }, + { + "id": 123, + "catPath": ":123:3", + "name": "Mainboard Intel", + "url": "\/mainboard-intel" + } + ] + }, + { + "id": 3647, + "productId": 3647, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 13990000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 13990000, + "normal_price": 13990000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2024-10-08 11:40:49", + "warranty": "36 Th\u00e1ng", + "productName": "Mainboard ASUS ROG STRIX Z790-E GAMING WIFI II (Intel Z790, Socket 1700, ATX, 4 khe Ram DDR5)", + "productSummary": "

Mainboard ASUS STRIX Z790-E GAMING WIFI II D5<\/p>\r\n

Socket: LGA1700 h\u1ed7 tr\u1ee3 CPU\u00a0Intel\u00a0Core 14th & 13th Gen Processors, Intel Core 12th Gen, Pentium\u00a0Gold and Celero<\/p>\r\n

K\u00edch th\u01b0\u1edbc: ATX<\/p>\r\n

Khe c\u1eafm RAM: 4 khe DDR5 (T\u1ed1i \u0111a 192GB)<\/p>\r\n

T\u00edch h\u1ee3p s\u1eb5n Wifi & Bluetooth<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3647_rog_strix_z790_e_gaming_wifi_ii_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3647_rog_strix_z790_e_gaming_wifi_ii_ha1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3647_rog_strix_z790_e_gaming_wifi_ii_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3647_rog_strix_z790_e_gaming_wifi_ii_ha1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3647_rog_strix_z790_e_gaming_wifi_ii_ha7.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3647_rog_strix_z790_e_gaming_wifi_ii_ha7.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3647_rog_strix_z790_e_gaming_wifi_ii_ha4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3647_rog_strix_z790_e_gaming_wifi_ii_ha4.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3647_rog_strix_z790_e_gaming_wifi_ii_ha5.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3647_rog_strix_z790_e_gaming_wifi_ii_ha5.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3647_rog_strix_z790_e_gaming_wifi_ii_ha6.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3647_rog_strix_z790_e_gaming_wifi_ii_ha6.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3647_rog_strix_z790_e_gaming_wifi_ii_ha3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3647_rog_strix_z790_e_gaming_wifi_ii_ha3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3647_rog_strix_z790_e_gaming_wifi_ii_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3647_rog_strix_z790_e_gaming_wifi_ii_ha2.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/mainboard-asus-strix-z790-e-gaming-wifi", + "brand": { + "id": 2, + "brand_index": "asus", + "name": "ASUS", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/asus.jpg", + "url": "\/brand\/asus" + }, + "visit": 7787, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": [], + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 163, + "catPath": ":163:123:3", + "name": "Mainboard Intel Z790", + "url": "\/mainboard-intel-z790" + }, + { + "id": 3, + "catPath": ":3", + "name": "Mainboard - Bo M\u1ea1ch Ch\u1ee7", + "url": "\/main-bo-mach-chu" + }, + { + "id": 123, + "catPath": ":123:3", + "name": "Mainboard Intel", + "url": "\/mainboard-intel" + } + ] + }, + { + "id": 3648, + "productId": 3648, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 11290000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 11290000, + "normal_price": 11290000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2023-10-17 14:50:19", + "warranty": "36 Th\u00e1ng", + "productName": "Mainboard ASUS ROG STRIX Z790-F GAMING WIFI (Intel Z790, Socket 1700, ATX, 4 khe Ram DDR5)", + "productSummary": "

Mainboard ASUS STRIX Z790-F GAMING WIFI DDR5 Socket: LGA1700 h\u1ed7 tr\u1ee3 CPU intel th\u1ebf h\u1ec7 13 K\u00edch th\u01b0\u1edbc: ATX Khe c\u1eafm RAM: 4 khe DDR5 (T\u1ed1i \u0111a 128GB)<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3648_asus_rog_strix_z790_f_gaming_wifi_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3648_asus_rog_strix_z790_f_gaming_wifi_1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3648_", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3648_", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3648_asus_rog_strix_z790_f_gaming_wifi_4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3648_asus_rog_strix_z790_f_gaming_wifi_4.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3648_asus_rog_strix_z790_f_gaming_wifi_3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3648_asus_rog_strix_z790_f_gaming_wifi_3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3648_asus_rog_strix_z790_f_gaming_wifi_2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3648_asus_rog_strix_z790_f_gaming_wifi_2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3648_asus_rog_strix_z790_f_gaming_wifi_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3648_asus_rog_strix_z790_f_gaming_wifi_1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/mainboard-asus-strix-z790-f-gaming-wifi", + "brand": { + "id": 2, + "brand_index": "asus", + "name": "ASUS", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/asus.jpg", + "url": "\/brand\/asus" + }, + "visit": 6980, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 163, + "catPath": ":163:123:3", + "name": "Mainboard Intel Z790", + "url": "\/mainboard-intel-z790" + }, + { + "id": 3, + "catPath": ":3", + "name": "Mainboard - Bo M\u1ea1ch Ch\u1ee7", + "url": "\/main-bo-mach-chu" + }, + { + "id": 123, + "catPath": ":123:3", + "name": "Mainboard Intel", + "url": "\/mainboard-intel" + } + ] + }, + { + "id": 3660, + "productId": 3660, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 15990000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 15990000, + "normal_price": 15990000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2022-11-24 09:22:30", + "warranty": "36 th\u00e1ng", + "productName": "Mainboard Gigabyte Z790 AORUS MASTER DDR5 (Intel Z790, Socket LGA1700, E-ATX, 4 khe RAM DDR5)", + "productSummary": "Th\u01b0\u01a1ng hi\u1ec7u: GIGABYTE\r\nModel: Z790 AORUS MASTER\r\nSocket: LGA 1700\r\nH\u1ed7 tr\u1ee3 CPU: Intel 13th, 12th\r\nH\u1ed7 tr\u1ee3 Ram: 4 x DDR5 up to 128 GB (32 GB single DIMM capacity)", + "package_accessory": "", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3660_z790_aorus_master_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3660_z790_aorus_master_ha2.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3660_z790_aorus_master_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3660_z790_aorus_master_ha2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3660_z790_aorus_master_ha3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3660_z790_aorus_master_ha3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3660_z790_aorus_master_ha5.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3660_z790_aorus_master_ha5.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3660_z790_aorus_master_ha6.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3660_z790_aorus_master_ha6.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3660_z790_aorus_master_ha4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3660_z790_aorus_master_ha4.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3660_z790_aorus_master_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3660_z790_aorus_master_ha1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/mainboard-gigabyte-z790-aorus-master", + "brand": { + "id": 6, + "brand_index": "gigabyte", + "name": "GIGABYTE", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/gigabyte.jpg", + "url": "\/brand\/gigabyte" + }, + "visit": 7588, + "rating": 5, + "reviewCount": 1, + "review": { + "rate": 5, + "total": 1 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 163, + "catPath": ":163:123:3", + "name": "Mainboard Intel Z790", + "url": "\/mainboard-intel-z790" + }, + { + "id": 3, + "catPath": ":3", + "name": "Mainboard - Bo M\u1ea1ch Ch\u1ee7", + "url": "\/main-bo-mach-chu" + }, + { + "id": 123, + "catPath": ":123:3", + "name": "Mainboard Intel", + "url": "\/mainboard-intel" + } + ] + }, + { + "id": 843, + "productId": 843, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 1990000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 1990000, + "normal_price": 1990000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2025-12-29 09:25:28", + "warranty": "3 ng\u00e0y", + "productName": "Mainboard Supermicro X10DRL-i (Intel C612, LGA 2011-3, ATX, 8 Khe C\u1eafm Ram DDR4)", + "productSummary": "

Dual socket R3 (LGA 2011-3) supports Intel\u00ae Xeon\u00ae processor E5-2600 v3 family; QPI up to 9.6GT\/s<\/p>\r\n

Intel\u00ae C612 chipset<\/p>\r\n

Up to 512GB ECC DDR4 2133MHz; 8x DIMM sockets<\/p>\r\n

3 PCI-E 3.0 x8, 1 PCI-E 3.0 x4 (in x8), 1 PCI-E 3.0 x16, 1 PCI-E 2.0 x4 (in x8)<\/p>", + "package_accessory": "", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_843_mainboard_supermicro_x10drl_i.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_843_mainboard_supermicro_x10drl_i.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_843_mainboard_supermicro_x10drl_i.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_843_mainboard_supermicro_x10drl_i.jpg", + "original": "" + }, + "alt": "Mainboard Supermicro X10DRL-i" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_843_x10drl_i.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_843_x10drl_i.jpg", + "original": "" + }, + "alt": "Mainboard Supermicro X10DRL-i" + } + ], + "productUrl": "\/mainboard-supermicro-x10drl-i", + "brand": { + "id": 38, + "brand_index": "supermicro", + "name": "SUPERMICRO", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/supermicro.jpg", + "url": "\/brand\/supermicro" + }, + "visit": 13968, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 5, + "total": 1 + }, + "quantity": 1, + "productSKU": "", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 138, + "catPath": ":138:123:3", + "name": "Mainboard Kh\u00e1c", + "url": "\/mainboard-intel-khac" + } + ] + }, + { + "id": 4517, + "productId": 4517, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 19990000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 19990000, + "normal_price": 19990000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2025-10-21 13:48:59", + "warranty": "12 th\u00e1ng", + "productName": "Mainboard ASUS Pro WS WRX80E-SAGE SE WIFI (AMD WRX80, sWRX8, EATX, 8 khe RAM DDR4)", + "productSummary": "

\u1ed4 c\u1eafm AMD sWRX8:<\/strong>\u00a0S\u1eb5n s\u00e0ng cho B\u1ed9 x\u1eed l\u00fd AMD Ryzen\u2122 Threadripper\u2122 PRO Series<\/p>\r\n

K\u1ebft n\u1ed1i t\u1ed1c \u0111\u1ed9 cao:<\/strong>\u00a0C\u1ed5ng USB Type-C Gen 3.2 2x2, 10 c\u1ed5ng USB 3.2 Gen 2, 3 x M.2 PCIe 4.0, card HYPER M.2 x16 Gen 4 v\u00e0 Ethernet 10Gb k\u00e9p Intel\u00ae X550-AT2<\/p>\r\n

Qu\u1ea3n l\u00fd t\u1eeb xa ASMB9-iKVM:<\/strong>\u00a0chip BMC \u0111\u1ec3 cung c\u1ea5p th\u00f4ng minh cho ki\u1ebfn tr\u00fac IPMI c\u1ee7a n\u00f3 \u0111\u1ec3 qu\u1ea3n l\u00fd ngo\u00e0i b\u0103ng t\u1ea7n nh\u1eb1m n\u00e2ng cao kh\u1ea3 n\u0103ng ki\u1ec3m so\u00e1t c\u1ea5p ph\u1ea7n c\u1ee9ng nh\u1eb1m c\u1ea3i thi\u1ec7n hi\u1ec7u qu\u1ea3 CNTT<\/p>\r\n

Hi\u1ec7u su\u1ea5t m\u1ea1nh m\u1ebd:<\/strong>\u00a016 t\u1ee5 c\u1ea5p ngu\u1ed3n, h\u1ed7 tr\u1ee3 \u0111a GPU v\u00e0 h\u1ed7 tr\u1ee3 b\u1ed9 nh\u1edb R-DIMM<\/p>", + "package_accessory": "", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4517_ws_wrx80e_sage_se_wifi_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4517_ws_wrx80e_sage_se_wifi_ha2.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4517_ws_wrx80e_sage_se_wifi_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4517_ws_wrx80e_sage_se_wifi_ha2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4517_ws_wrx80e_sage_se_wifi_ha9.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4517_ws_wrx80e_sage_se_wifi_ha9.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4517_ws_wrx80e_sage_se_wifi_ha3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4517_ws_wrx80e_sage_se_wifi_ha3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4517_ws_wrx80e_sage_se_wifi_ha8.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4517_ws_wrx80e_sage_se_wifi_ha8.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4517_ws_wrx80e_sage_se_wifi_ha7.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4517_ws_wrx80e_sage_se_wifi_ha7.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4517_ws_wrx80e_sage_se_wifi_ha4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4517_ws_wrx80e_sage_se_wifi_ha4.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4517_ws_wrx80e_sage_se_wifi_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4517_ws_wrx80e_sage_se_wifi_ha1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4517_ws_wrx80e_sage_se_wifi_ha6.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4517_ws_wrx80e_sage_se_wifi_ha6.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4517_ws_wrx80e_sage_se_wifi_ha5.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4517_ws_wrx80e_sage_se_wifi_ha5.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/mainboard-asus-pro-ws-wrx80e-sage-se-wifi", + "brand": { + "id": 2, + "brand_index": "asus", + "name": "ASUS", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/asus.jpg", + "url": "\/brand\/asus" + }, + "visit": 4585, + "rating": 5, + "reviewCount": 1, + "review": { + "rate": 5, + "total": 1 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": [], + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 138, + "catPath": ":138:123:3", + "name": "Mainboard Kh\u00e1c", + "url": "\/mainboard-intel-khac" + }, + { + "id": 3, + "catPath": ":3", + "name": "Mainboard - Bo M\u1ea1ch Ch\u1ee7", + "url": "\/main-bo-mach-chu" + }, + { + "id": 123, + "catPath": ":123:3", + "name": "Mainboard Intel", + "url": "\/mainboard-intel" + } + ] + }, + { + "id": 5412, + "productId": 5412, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 8690000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 8690000, + "normal_price": 8690000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2024-12-11 09:11:56", + "warranty": "36 th\u00e1ng", + "productName": "Mainboard ASUS PRIME Z890M-PLUS WIFI (Intel Z890, Socket 1851, mATX, 4 khe RAM DDR5)", + "productSummary": "

Intel\u00ae\u00a0Z890 (LGA 1851) mATX motherboard, Advanced AI PC-ready,<\/p>\r\n

10+1+2+1 80A DrMOS power stages<\/p>\r\n

DDR5 slots, PCIe\u00ae\u00a05.0 x16 SafeSlot, and full support for next-gen graphics card<\/p>\r\n

DisplayPort, HDMI\u2122, USB 20Gbps port supports DisplayPort video output<\/p>\r\n

Front panel USB 5Gbps Type-C\u00ae\u00a0port, 3 x M.2 slots<\/p>\r\n

Wi-Fi 7 with Q-Antenna, Realtek 2.5 Gb Ethernet<\/p>\r\n

Pre-mounted I\/O shield, BIOS FlashBack\u2122, Aura Sync<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5412_prime_z890m_plus_wifi_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5412_prime_z890m_plus_wifi_ha1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5412_prime_z890m_plus_wifi_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5412_prime_z890m_plus_wifi_ha1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5412_prime_z890m_plus_wifi_ha3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5412_prime_z890m_plus_wifi_ha3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5412_prime_z890m_plus_wifi_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5412_prime_z890m_plus_wifi_ha2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5412_prime_z890m_plus_wifi_ha6.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5412_prime_z890m_plus_wifi_ha6.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_5412_prime_z890m_plus_wifi_ha5.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_5412_prime_z890m_plus_wifi_ha5.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/mainboard-asus-prime-z890m-plus-wifi", + "brand": { + "id": 2, + "brand_index": "asus", + "name": "ASUS", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/asus.jpg", + "url": "\/brand\/asus" + }, + "visit": 1156, + "rating": 5, + "reviewCount": 1, + "review": { + "rate": 5, + "total": 1 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": [], + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": [], + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 258, + "catPath": ":258:123:3", + "name": "Mainboard Intel Z890", + "url": "\/mainboard-intel-z890" + }, + { + "id": 3, + "catPath": ":3", + "name": "Mainboard - Bo M\u1ea1ch Ch\u1ee7", + "url": "\/main-bo-mach-chu" + }, + { + "id": 123, + "catPath": ":123:3", + "name": "Mainboard Intel", + "url": "\/mainboard-intel" + } + ] + }, + { + "id": 6034, + "productId": 6034, + "priceUnit": "chi\u1ebfc", + "marketPrice": 3200000, + "price": 2990000, + "price_off": 7.000000000000001, + "currency": "vnd", + "sale_rules": { + "price": 2990000, + "normal_price": 2990000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2026-02-07 08:26:18", + "warranty": "36 th\u00e1ng", + "productName": "Mainboard ASRock B760M PRO RS D4 (Intel B760, Socket LGA1700, mATX, 4 khe RAM DDR4)", + "productSummary": "

Supports 14th, 13th\u00a0& 12th\u00a0Gen Intel\u00ae\u00a0Core\u2122 Processors (LGA1700)<\/p>\r\n

7+1+1 Power Phase, Dr.MOS for VCore+GT<\/p>\r\n

4 x DDR4 DIMMs\u00a0<\/p>\r\n

Supports Dual Channel, up to 5333+ (OC)<\/p>\r\n

2 PCIe 4.0 x16, 1 PCIe 4.0 x1, 1 M.2 Key E for WiFi<\/p>\r\n

4 SATA3, 2 Hyper M.2 (PCIe Gen4x4)<\/p>\r\n

2x USB 3.2 Gen1 Type-C\/\u00a05x USB 3.2 Gen1 Type-A\/\u00a06x USB 2.0<\/p>\r\n

Dragon 2.5G LAN<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_6034_b760m_pro_rs_d4_ha5.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_6034_b760m_pro_rs_d4_ha5.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_6034_b760m_pro_rs_d4_ha5.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_6034_b760m_pro_rs_d4_ha5.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_6034_b760m_pro_rs_d4_ha4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_6034_b760m_pro_rs_d4_ha4.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_6034_b760m_pro_rs_d4_ha3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_6034_b760m_pro_rs_d4_ha3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_6034_b760m_pro_rs_d4_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_6034_b760m_pro_rs_d4_ha2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_6034_b760m_pro_rs_d4_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_6034_b760m_pro_rs_d4_ha1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/mainboard-asrock-b760m-pro-rs-d4", + "brand": { + "id": 12, + "brand_index": "asrock", + "name": "ASROCK", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/asrock.jpg", + "url": "\/brand\/asrock" + }, + "visit": 2076, + "rating": 0, + "reviewCount": 0, + "review": { + "rate": 0, + "total": 0 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": [], + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": [], + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 232, + "catPath": ":232:123:3", + "name": "Mainboard Intel B760", + "url": "\/mainboard-intel-b760" + }, + { + "id": 3, + "catPath": ":3", + "name": "Mainboard - Bo M\u1ea1ch Ch\u1ee7", + "url": "\/main-bo-mach-chu" + }, + { + "id": 123, + "catPath": ":123:3", + "name": "Mainboard Intel", + "url": "\/mainboard-intel" + } + ] + }, + { + "id": 4406, + "productId": 4406, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 12990000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 12990000, + "normal_price": 12990000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2023-06-14 11:16:41", + "warranty": "36 th\u00e1ng", + "productName": "Mainboard ASUS ROG STRIX X670E-E GAMING WIFI (AMD X670, Socket AM5, ATX, 4 khe RAM DDR5)", + "productSummary": "Mainboard ASUS ROG STRIX X670E-E GAMING WIFI\r\nChipset: AMD X670\r\nSocket: AM5\r\nS\u1ed1 khe RAM: 4 khe DDR5\r\nK\u00edch th\u01b0\u1edbc: ATX\r\nT\u00edch h\u1ee3p s\u1eb5n Wifi & Bluetooth", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4406_rog_strix_x670e_e_gaming_wifi_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4406_rog_strix_x670e_e_gaming_wifi_ha2.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4406_rog_strix_x670e_e_gaming_wifi_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4406_rog_strix_x670e_e_gaming_wifi_ha2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4406_rog_strix_x670e_e_gaming_wifi_ha3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4406_rog_strix_x670e_e_gaming_wifi_ha3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4406_rog_strix_x670e_e_gaming_wifi_ha4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4406_rog_strix_x670e_e_gaming_wifi_ha4.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4406_rog_strix_x670e_e_gaming_wifi_ha5.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4406_rog_strix_x670e_e_gaming_wifi_ha5.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4406_rog_strix_x670e_e_gaming_wifi_ha6.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4406_rog_strix_x670e_e_gaming_wifi_ha6.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4406_rog_strix_x670e_e_gaming_wifi_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4406_rog_strix_x670e_e_gaming_wifi_ha1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/mainboard-asus-rog-strix-x670e-e-gaming-wifi", + "brand": { + "id": 2, + "brand_index": "asus", + "name": "ASUS", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/asus.jpg", + "url": "\/brand\/asus" + }, + "visit": 2868, + "rating": 5, + "reviewCount": 1, + "review": { + "rate": 5, + "total": 1 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 160, + "catPath": ":160:124:3", + "name": "Mainboard AMD X670", + "url": "\/mainboard-amd-x670" + }, + { + "id": 3, + "catPath": ":3", + "name": "Mainboard - Bo M\u1ea1ch Ch\u1ee7", + "url": "\/main-bo-mach-chu" + }, + { + "id": 124, + "catPath": ":124:3", + "name": "Mainboard AMD", + "url": "\/mainboard-amd" + } + ] + }, + { + "id": 4407, + "productId": 4407, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 10790000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 10790000, + "normal_price": 10790000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2023-06-14 11:42:13", + "warranty": "36 th\u00e1ng", + "productName": "Mainboard ASUS ROG STRIX X670E-A GAMING WIFI (AMD X670, Socket AM5, ATX, 4 khe RAM DDR5)", + "productSummary": "Mainboard ASUS ROG STRIX X670E-A GAMING WIFI\r\nChipset: AMD X670\r\nSocket: AM5\r\nS\u1ed1 khe RAM: 4 khe DDR5\r\nK\u00edch th\u01b0\u1edbc: ATX\r\nT\u00edch h\u1ee3p s\u1eb5n Wifi & Bluetooth", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4407_rog_strix_x670e_a_gaming_wifi_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4407_rog_strix_x670e_a_gaming_wifi_ha2.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4407_rog_strix_x670e_a_gaming_wifi_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4407_rog_strix_x670e_a_gaming_wifi_ha2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4407_rog_strix_x670e_a_gaming_wifi_ha5.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4407_rog_strix_x670e_a_gaming_wifi_ha5.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4407_rog_strix_x670e_a_gaming_wifi_ha3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4407_rog_strix_x670e_a_gaming_wifi_ha3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4407_rog_strix_x670e_a_gaming_wifi_ha4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4407_rog_strix_x670e_a_gaming_wifi_ha4.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4407_rog_strix_x670e_a_gaming_wifi_ha6.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4407_rog_strix_x670e_a_gaming_wifi_ha6.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4407_rog_strix_x670e_a_gaming_wifi_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4407_rog_strix_x670e_a_gaming_wifi_ha1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/mainboard-asus-rog-strix-x670e-a-gaming-wifi", + "brand": { + "id": 2, + "brand_index": "asus", + "name": "ASUS", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/asus.jpg", + "url": "\/brand\/asus" + }, + "visit": 2573, + "rating": 5, + "reviewCount": 1, + "review": { + "rate": 5, + "total": 1 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 160, + "catPath": ":160:124:3", + "name": "Mainboard AMD X670", + "url": "\/mainboard-amd-x670" + }, + { + "id": 3, + "catPath": ":3", + "name": "Mainboard - Bo M\u1ea1ch Ch\u1ee7", + "url": "\/main-bo-mach-chu" + }, + { + "id": 124, + "catPath": ":124:3", + "name": "Mainboard AMD", + "url": "\/mainboard-amd" + } + ] + }, + { + "id": 4408, + "productId": 4408, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 12690000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 12690000, + "normal_price": 12690000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2023-06-14 11:56:33", + "warranty": "36 th\u00e1ng", + "productName": "Mainboard ASUS ROG STRIX X670E-I GAMING WIFI (AMD X670, Socket AM5, mATX, 2 khe RAM DDR5)", + "productSummary": "Mainboard ASUS ROG STRIX X670E-I GAMING WIFI\r\nChipset: AMD X670\r\nSocket: AM5\r\nS\u1ed1 khe RAM: 2 khe DDR5\r\nK\u00edch th\u01b0\u1edbc: mATX\r\nT\u00edch h\u1ee3p s\u1eb5n Wifi & Bluetooth", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4408_rog_strix_x670e_i_gaming_wifi_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4408_rog_strix_x670e_i_gaming_wifi_ha1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4408_rog_strix_x670e_i_gaming_wifi_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4408_rog_strix_x670e_i_gaming_wifi_ha1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4408_rog_strix_x670e_i_gaming_wifi_ha7.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4408_rog_strix_x670e_i_gaming_wifi_ha7.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4408_rog_strix_x670e_i_gaming_wifi_ha6.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4408_rog_strix_x670e_i_gaming_wifi_ha6.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4408_rog_strix_x670e_i_gaming_wifi_ha5.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4408_rog_strix_x670e_i_gaming_wifi_ha5.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4408_rog_strix_x670e_i_gaming_wifi_ha4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4408_rog_strix_x670e_i_gaming_wifi_ha4.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4408_rog_strix_x670e_i_gaming_wifi_ha3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4408_rog_strix_x670e_i_gaming_wifi_ha3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_4408_rog_strix_x670e_i_gaming_wifi_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_4408_rog_strix_x670e_i_gaming_wifi_ha2.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/mainboard-asus-rog-strix-x670e-i-gaming-wifi", + "brand": { + "id": 2, + "brand_index": "asus", + "name": "ASUS", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/asus.jpg", + "url": "\/brand\/asus" + }, + "visit": 2992, + "rating": 5, + "reviewCount": 1, + "review": { + "rate": 5, + "total": 1 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 160, + "catPath": ":160:124:3", + "name": "Mainboard AMD X670", + "url": "\/mainboard-amd-x670" + }, + { + "id": 3, + "catPath": ":3", + "name": "Mainboard - Bo M\u1ea1ch Ch\u1ee7", + "url": "\/main-bo-mach-chu" + }, + { + "id": 124, + "catPath": ":124:3", + "name": "Mainboard AMD", + "url": "\/mainboard-amd" + } + ] + }, + { + "id": 3654, + "productId": 3654, + "priceUnit": "chi\u1ebfc", + "marketPrice": 7000000, + "price": 6500000, + "price_off": 7.000000000000001, + "currency": "vnd", + "sale_rules": { + "price": 6500000, + "normal_price": 6500000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2025-06-30 13:56:10", + "warranty": "36 Th\u00e1ng", + "productName": "Mainboard MSI MAG Z790 TOMAHAWK WIFI DDR5 (Intel Z790, Socket 1700, ATX, 4 khe Ram DDR5)", + "productSummary": "

H\u1ed7 tr\u1ee3 vi x\u1eed l\u00fd Intel\u00ae\u00a0Core\u2122 \/ Pentium\u00ae\u00a0\/ Celeron\u00ae\u00a0th\u1ebf h\u1ec7 12 v\u00e0 13 v\u00e0 14 s\u1eed d\u1ee5ng socket LGA 1700<\/p>\r\n

H\u1ed7 tr\u1ee3 b\u1ed9 nh\u1edb DDR5, t\u1ed1c \u0111\u1ed9 l\u00ean \u0111\u1ebfn 7200+(OC) MHz<\/p>\r\n

Thi\u1ebft k\u1ebf c\u1ea5p \u0111i\u1ec7n t\u0103ng c\u01b0\u1eddng: Thi\u1ebft k\u1ebf c\u1ea5p \u0111i\u1ec7n 16+1+1 Mirrored Power Arrangement, hai \u0111\u1ea7u c\u1ea5p \u0111i\u1ec7n 8-pin cho CPU, Core Boost, Memory Boost<\/p>\r\n

Tr\u1ea3i nghi\u1ec7m game si\u00eau t\u1ed1c: Khe PCIe 5.0, Lightning Gen 4 x4 M.2, USB 3.2 Gen 2x2<\/p>\r\n

Gi\u1ea3i ph\u00e1p t\u1ea3n nhi\u1ec7t cao c\u1ea5p: Thi\u1ebft k\u1ebf t\u1ea5m t\u1ea3n nhi\u1ec7t m\u1edf r\u1ed9ng, t\u1ea3n nhi\u1ec7t khe M.2 Shield Frozr \u0111\u01b0\u1ee3c ch\u1ebf t\u1ea1o cho h\u1ec7 th\u1ed1ng hi\u1ec7u su\u1ea5t cao l\u00e0m vi\u1ec7c kh\u00f4ng ngh\u1ec9<\/p>\r\n

AUDIO BOOST 5: Chi\u1ec1u chu\u1ed9ng \u0111\u00f4i tai c\u1ee7a b\u1ea1n v\u1edbi ch\u1ea5t \u00e2m chu\u1ea9n ph\u00f2ng thu \u0111em \u0111\u1ebfn tr\u1ea3i nghi\u1ec7m \u00e2m thanh ch\u00e2n th\u1ef1c<\/p>\r\n

B\u1ea3ng m\u1ea1ch PCB cao c\u1ea5p: b\u1ea3ng m\u1ea1ch PCB 6 l\u1edbp \u0111\u01b0\u1ee3c ch\u1ebf t\u1ea1o v\u1edbi v\u1eadt li\u1ec7u chu\u1ea9n m\u00e1y ch\u1ee7 d\u00e0y 2oz \u0111\u1ed3ng<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3654_msi_mag_z790_tomahawk_wifi_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3654_msi_mag_z790_tomahawk_wifi_1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3654_", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3654_", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3654_msi_mag_z790_tomahawk_wifi_5.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3654_msi_mag_z790_tomahawk_wifi_5.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3654_msi_mag_z790_tomahawk_wifi_4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3654_msi_mag_z790_tomahawk_wifi_4.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3654_msi_mag_z790_tomahawk_wifi_3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3654_msi_mag_z790_tomahawk_wifi_3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3654_msi_mag_z790_tomahawk_wifi_2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3654_msi_mag_z790_tomahawk_wifi_2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3654_msi_mag_z790_tomahawk_wifi_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3654_msi_mag_z790_tomahawk_wifi_1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/mainboard-msi-mag-z790-tomahawk-wifi-ddr5", + "brand": { + "id": 7, + "brand_index": "msi", + "name": "MSI", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/msi.jpg", + "url": "\/brand\/msi" + }, + "visit": 6868, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 163, + "catPath": ":163:123:3", + "name": "Mainboard Intel Z790", + "url": "\/mainboard-intel-z790" + }, + { + "id": 3, + "catPath": ":3", + "name": "Mainboard - Bo M\u1ea1ch Ch\u1ee7", + "url": "\/main-bo-mach-chu" + }, + { + "id": 123, + "catPath": ":123:3", + "name": "Mainboard Intel", + "url": "\/mainboard-intel" + } + ] + }, + { + "id": 3151, + "productId": 3151, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 1790000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 1790000, + "normal_price": 1790000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2026-02-22 14:39:30", + "warranty": "36 Th\u00e1ng", + "productName": "Mainboard Gigabyte H610M H V2 (Intel H610, Socket 1700, m-ATX, 2 khe RAM DDR4)", + "productSummary": "

Supports Intel\u00ae Core\u2122 14th\/ 13th \/12th processors<\/p>\r\n

Dual Channel Non-ECC Unbuffered DDR4, 2 DIMMs<\/p>\r\n

6+1+1 Hybrid Digital VRM Design<\/p>\r\n

GbE LAN with Bandwidth Management<\/p>\r\n

NVMe PCIe 3.0 x4 M.2<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3151_h610m_h_v2_d4_ha_.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3151_h610m_h_v2_d4_ha_.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3151_h610m_h_v2_d4_ha_.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3151_h610m_h_v2_d4_ha_.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3151_h610m_h_v2_d4_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3151_h610m_h_v2_d4_ha2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3151_h610m_h_v2_d4_ha6.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3151_h610m_h_v2_d4_ha6.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3151_h610m_h_v2_d4_ha5.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3151_h610m_h_v2_d4_ha5.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3151_h610m_h_v2_d4_ha3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3151_h610m_h_v2_d4_ha3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3151_h610m_h_v2_d4_ha4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3151_h610m_h_v2_d4_ha4.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/mainboard-gigabyte-h610m-h", + "brand": { + "id": 6, + "brand_index": "gigabyte", + "name": "GIGABYTE", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/gigabyte.jpg", + "url": "\/brand\/gigabyte" + }, + "visit": 22866, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": [], + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 157, + "catPath": ":157:123:3", + "name": "Mainboard Intel H610", + "url": "\/mainboard-intel-h610" + } + ] + }, + { + "id": 3166, + "productId": 3166, + "priceUnit": "chi\u1ebfc", + "marketPrice": 2000000, + "price": 1790000, + "price_off": 11, + "currency": "vnd", + "sale_rules": { + "price": 1790000, + "normal_price": 1790000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2026-02-22 14:03:03", + "warranty": "36 th\u00e1ng", + "productName": "Mainboard Asus PRIME H610M-K D4 (Intel H610, LGA 1700, M-ATX, 2 khe Ram DDR4)", + "productSummary": "

Socket Intel\u00ae\u00a0LGA 1700:<\/strong>\u00a0s\u1eb5n s\u00e0ng cho b\u1ed9 x\u1eed l\u00fd Intel\u00ae\u00a0th\u1ebf h\u1ec7 14, 13 v\u00e0 12.<\/p>\r\n

L\u00e0m m\u00e1t to\u00e0n di\u1ec7n:<\/strong>\u00a0T\u1ea3n nhi\u1ec7t PCH heatsink v\u00e0 ph\u1ea7n m\u1ec1m Fan Xpert<\/p>\r\n

K\u1ebft n\u1ed1i c\u1ef1c nhanh:<\/strong>\u00a0Khe M.2 32Gbps, Ethernet Realtek 1 Gb v\u00e0 h\u1ed7 tr\u1ee3 USB 3.2 Gen 1<\/p>\r\n

5X Protection III:<\/strong>\u00a0Nhi\u1ec1u t\u00ednh n\u0103ng b\u1ea3o v\u1ec7 ph\u1ea7n c\u1ee9ng kh\u00e1c nhau cho s\u1ef1 b\u1ea3o v\u1ec7 to\u00e0n di\u1ec7n<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3166_h610m_k_d4_ha1s.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3166_h610m_k_d4_ha1s.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3166_h610m_k_d4_ha1s.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3166_h610m_k_d4_ha1s.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3166_asus_prime_h610m_k_d4_2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3166_asus_prime_h610m_k_d4_2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3166_asus_prime_h610m_k_d4_3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3166_asus_prime_h610m_k_d4_3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3166_asus_prime_h610m_k_d4_4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3166_asus_prime_h610m_k_d4_4.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/mainboard-asus-prime-h610m-k-d4", + "brand": { + "id": 2, + "brand_index": "asus", + "name": "ASUS", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/asus.jpg", + "url": "\/brand\/asus" + }, + "visit": 12580, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 157, + "catPath": ":157:123:3", + "name": "Mainboard Intel H610", + "url": "\/mainboard-intel-h610" + } + ] + }, + { + "id": 3633, + "productId": 3633, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 8800000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 8800000, + "normal_price": 8800000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2023-11-17 13:49:37", + "warranty": "36 th\u00e1ng", + "productName": "Mainboard ASUS TUF Gaming X670E-PLUS (AMD X670, Socket AM5, ATX, 4 Khe C\u1eafm Ram DDR5)", + "productSummary": "

Mainboard ASUS TUF Gaming X670E-PLUS Bo m\u1ea1ch ch\u1ee7 AMD h\u1ed7 tr\u1ee3 series 7000 m\u1edbi c\u1ee7a AMD Chipset: X670 H\u1ed7 tr\u1ee3: ATX Khe RAM t\u1ed1i \u0111a: 4 DDR5<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3633_asus_tuf_x670e_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3633_asus_tuf_x670e_1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3633_", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3633_", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3633_asus_tuf_x670e_3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3633_asus_tuf_x670e_3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3633_asus_tuf_x670e_4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3633_asus_tuf_x670e_4.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3633_asus_tuf_x670e_2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3633_asus_tuf_x670e_2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3633_asus_tuf_x670e_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3633_asus_tuf_x670e_1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/mainboard-asus-tuf-gaming-x670e-plus", + "brand": { + "id": 2, + "brand_index": "asus", + "name": "ASUS", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/asus.jpg", + "url": "\/brand\/asus" + }, + "visit": 3038, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 160, + "catPath": ":160:124:3", + "name": "Mainboard AMD X670", + "url": "\/mainboard-amd-x670" + }, + { + "id": 3, + "catPath": ":3", + "name": "Mainboard - Bo M\u1ea1ch Ch\u1ee7", + "url": "\/main-bo-mach-chu" + }, + { + "id": 124, + "catPath": ":124:3", + "name": "Mainboard AMD", + "url": "\/mainboard-amd" + } + ] + }, + { + "id": 3909, + "productId": 3909, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 1790000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 1790000, + "normal_price": 1790000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2026-02-22 14:02:53", + "warranty": "36 th\u00e1ng", + "productName": "Mainboard MSI PRO H610M-E DDR4 (Intel H610, LGA 1700, m-ATX, 2 khe Ram DDR4)", + "productSummary": "

Mainboard MSI PRO H610M-E DDR4<\/p>\r\n

K\u00edch th\u01b0\u1edbc: ATX<\/p>\r\n

Socket: LGA 1700<\/p>\r\n

S\u1ed1 khe RAM: 2<\/p>", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3909_msi_pro_h610m_e_ddr4_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3909_msi_pro_h610m_e_ddr4_1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3909_", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3909_", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3909_msi_pro_h610m_e_ddr4_4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3909_msi_pro_h610m_e_ddr4_4.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3909_msi_pro_h610m_e_ddr4_3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3909_msi_pro_h610m_e_ddr4_3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3909_msi_pro_h610m_e_ddr4_2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3909_msi_pro_h610m_e_ddr4_2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3909_msi_pro_h610m_e_ddr4_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3909_msi_pro_h610m_e_ddr4_1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/mainboard-msi-pro-h610m-e-ddr4", + "brand": { + "id": 7, + "brand_index": "msi", + "name": "MSI", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/msi.jpg", + "url": "\/brand\/msi" + }, + "visit": 8007, + "rating": 5, + "reviewCount": 1, + "review": { + "rate": 5, + "total": 1 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 157, + "catPath": ":157:123:3", + "name": "Mainboard Intel H610", + "url": "\/mainboard-intel-h610" + } + ] + }, + { + "id": 3605, + "productId": 3605, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 12590000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 12590000, + "normal_price": 12590000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2023-06-14 11:02:29", + "warranty": "36 th\u00e1ng", + "productName": "Mainboard GIGABYTE X670E AORUS MASTER (AMD X670, Socket AM5, ATX, 4 Khe C\u1eafm Ram DDR5)", + "productSummary": "Mainboard GIGABYTE X670E AORUS MASTER\r\nBo m\u1ea1ch ch\u1ee7 AMD h\u1ed7 tr\u1ee3 series 7000 m\u1edbi c\u1ee7a AMD\r\nChipset: X670\r\nH\u1ed7 tr\u1ee3: ATX\r\nKhe RAM t\u1ed1i \u0111a: 4 DDR5", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3605_gigabyte_x670e_aorus_master_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3605_gigabyte_x670e_aorus_master_1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3605_", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3605_", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3605_gigabyte_x670e_aorus_master_5.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3605_gigabyte_x670e_aorus_master_5.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3605_gigabyte_x670e_aorus_master_4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3605_gigabyte_x670e_aorus_master_4.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3605_gigabyte_x670e_aorus_master_3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3605_gigabyte_x670e_aorus_master_3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3605_gigabyte_x670e_aorus_master_2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3605_gigabyte_x670e_aorus_master_2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3605_gigabyte_x670e_aorus_master_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3605_gigabyte_x670e_aorus_master_1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/mainboard-gigabyte-x670e-aorus-master", + "brand": { + "id": 6, + "brand_index": "gigabyte", + "name": "GIGABYTE", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/gigabyte.jpg", + "url": "\/brand\/gigabyte" + }, + "visit": 4075, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 160, + "catPath": ":160:124:3", + "name": "Mainboard AMD X670", + "url": "\/mainboard-amd-x670" + }, + { + "id": 3, + "catPath": ":3", + "name": "Mainboard - Bo M\u1ea1ch Ch\u1ee7", + "url": "\/main-bo-mach-chu" + }, + { + "id": 124, + "catPath": ":124:3", + "name": "Mainboard AMD", + "url": "\/mainboard-amd" + } + ] + }, + { + "id": 3606, + "productId": 3606, + "priceUnit": "chi\u1ebfc", + "marketPrice": 0, + "price": 25990000, + "price_off": "", + "currency": "vnd", + "sale_rules": { + "price": 25990000, + "normal_price": 25990000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2022-12-17 09:07:03", + "warranty": "36 th\u00e1ng", + "productName": "Mainboard ASUS ROG CROSSHAIR X670E EXTREME (AMD X670, Socket AM5, ATX, 4 Khe C\u1eafm Ram DDR5)", + "productSummary": "Mainboard ASUS ROG CROSSHAIR X670E EXTREME\r\nBo m\u1ea1ch ch\u1ee7 AMD h\u1ed7 tr\u1ee3 series 7000 m\u1edbi c\u1ee7a AMD\r\nChipset: X670\r\nH\u1ed7 tr\u1ee3: ATX\r\nKhe RAM t\u1ed1i \u0111a: 4 DDR5", + "package_accessory": "0", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3606_asus_crosshair_x670e_extreme_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3606_asus_crosshair_x670e_extreme_1.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3606_asus_x670e_extreme_3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3606_asus_x670e_extreme_3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3606_asus_x670e_extreme_5.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3606_asus_x670e_extreme_5.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3606_asus_x670e_extreme_4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3606_asus_x670e_extreme_4.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3606_asus_x670e_extreme_2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3606_asus_x670e_extreme_2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3606_asus_x670e_extreme_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3606_asus_x670e_extreme_1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3606_asus_crosshair_x670e_extreme_5.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3606_asus_crosshair_x670e_extreme_5.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3606_asus_crosshair_x670e_extreme_1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3606_asus_crosshair_x670e_extreme_1.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/mainboard-asus-rog-crosshair-x670e-extreme", + "brand": { + "id": 2, + "brand_index": "asus", + "name": "ASUS", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/asus.jpg", + "url": "\/brand\/asus" + }, + "visit": 5903, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "all": [] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 160, + "catPath": ":160:124:3", + "name": "Mainboard AMD X670", + "url": "\/mainboard-amd-x670" + }, + { + "id": 3, + "catPath": ":3", + "name": "Mainboard - Bo M\u1ea1ch Ch\u1ee7", + "url": "\/main-bo-mach-chu" + }, + { + "id": 124, + "catPath": ":124:3", + "name": "Mainboard AMD", + "url": "\/mainboard-amd" + } + ] + }, + { + "id": 3607, + "productId": 3607, + "priceUnit": "chi\u1ebfc", + "marketPrice": 7000000, + "price": 6500000, + "price_off": 7.000000000000001, + "currency": "vnd", + "sale_rules": { + "price": 6500000, + "normal_price": 6500000, + "min_purchase": 1, + "max_purchase": 1, + "remain_quantity": 1, + "from_time": 0, + "to_time": 0, + "type": "" + }, + "lastUpdate": "2025-06-30 13:56:36", + "warranty": "36 th\u00e1ng", + "productName": "Mainboard MSI PRO X670-P WIFI (AMD X670, Socket AM5, ATX, 4 khe RAM DRR5)", + "productSummary": "

Main MSI PRO X670-P WIFI<\/p>\r\n

Socket: AM5 Chipset: X670<\/p>\r\n

H\u1ed7 tr\u1ee3: ATX<\/p>\r\n

Khe RAM t\u1ed1i \u0111a: 4<\/p>\r\n

Lo\u1ea1i RAM h\u1ed7 tr\u1ee3: DDR5<\/p>", + "package_accessory": "", + "productImage": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3607_msi_pro_x670_p_wifi_ha4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3607_msi_pro_x670_p_wifi_ha4.jpg", + "original": "" + }, + "imageCollection": [ + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3607_msi_pro_x670_p_wifi_ha4.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3607_msi_pro_x670_p_wifi_ha4.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3607_msi_pro_x670_p_wifi_ha3.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3607_msi_pro_x670_p_wifi_ha3.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3607_msi_pro_x670_p_wifi_ha2.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3607_msi_pro_x670_p_wifi_ha2.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3607_msi_pro_x670_p_wifi_ha1.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3607_msi_pro_x670_p_wifi_ha1.jpg", + "original": "" + }, + "alt": "" + }, + { + "image": { + "small": "https:\/\/hoanghapccdn.com\/media\/product\/75_3607_msi_pro_x670_p_wifi_ha5.jpg", + "large": "https:\/\/hoanghapccdn.com\/media\/product\/250_3607_msi_pro_x670_p_wifi_ha5.jpg", + "original": "" + }, + "alt": "" + } + ], + "productUrl": "\/main-msi-pro-x670-p-wifi", + "brand": { + "id": 7, + "brand_index": "msi", + "name": "MSI", + "image": "https:\/\/hoanghapccdn.com\/media\/brand\/msi.jpg", + "url": "\/brand\/msi" + }, + "visit": 5133, + "rating": 5, + "reviewCount": 3810, + "review": { + "rate": 5, + "total": 3810 + }, + "comment": { + "rate": 0, + "total": 0 + }, + "quantity": 1, + "productSKU": "0", + "productModel": "", + "hasVAT": 0, + "condition": "0", + "config_count": 0, + "configurable": 0, + "component_count": 0, + "specialOffer": { + "other": [ + { + "id": 0, + "title": "

Ch\u1ec9 b\u00e1n k\u00e8m CPU AMD Ryzen 9 7900X - 7950X<\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ], + "all": [ + { + "id": 0, + "title": "

Ch\u1ec9 b\u00e1n k\u00e8m CPU AMD Ryzen 9 7900X - 7950X<\/p>", + "type": "", + "thumbnail": "", + "cash_value": 0, + "quantity": 1, + "from_time": "", + "to_time": "", + "url": "", + "description": "", + "status": 1 + } + ] + }, + "specialOfferGroup": [], + "productType": { + "isNew": 0, + "isHot": 0, + "isBestSale": 0, + "isSaleOff": 0, + "online-only": 0 + }, + "bulk_price": null, + "thum_poster": "0", + "thum_poster_type": "", + "addon": [], + "variants": [], + "variant_option": [], + "extend": null, + "weight": 0, + "promotion_price": null, + "deal_list": [], + "pricing_traces": [], + "categories": [ + { + "id": 160, + "catPath": ":160:124:3", + "name": "Mainboard AMD X670", + "url": "\/mainboard-amd-x670" + }, + { + "id": 3, + "catPath": ":3", + "name": "Mainboard - Bo M\u1ea1ch Ch\u1ee7", + "url": "\/main-bo-mach-chu" + }, + { + "id": 124, + "catPath": ":124:3", + "name": "Mainboard AMD", + "url": "\/mainboard-amd" + } + ] + } + ], + "paging_collection": [ + { + "name": 1, + "url": "\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&pc_part_id=&sort=order", + "is_active": 1 + }, + { + "name": 2, + "url": "\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&pc_part_id=&sort=order&page=2", + "is_active": 0 + }, + { + "name": 3, + "url": "\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&pc_part_id=&sort=order&page=3", + "is_active": 0 + }, + { + "name": 4, + "url": "\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&pc_part_id=&sort=order&page=4", + "is_active": 0 + }, + { + "name": 5, + "url": "\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&pc_part_id=&sort=order&page=5", + "is_active": 0 + }, + { + "name": 6, + "url": "\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&pc_part_id=&sort=order&page=6", + "is_active": 0 + }, + { + "name": 7, + "url": "\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&pc_part_id=&sort=order&page=7", + "is_active": 0 + }, + { + "name": "next", + "url": "\/ajax\/get_json.php?action=pcbuilder&action_type=get-product-category&category_id=3&pc_part_id=&sort=order&page=2", + "is_active": 0 + } + ], + "paging_count": 9 + }, + { + "id": 4, + "name": "RAM", + "attribute_filter_list": [], + "brand_filter_list": [], + "price_filter_list": [], + "sort_by_collection": [], + "sort_option": "order", + "search_query": "", + "search_url": "", + "product_list": [], + "paging_collection": [], + "paging_count": 0 + }, + { + "id": 16, + "name": "\u1ed4 C\u1ee9ng SSD", + "attribute_filter_list": [], + "brand_filter_list": [], + "price_filter_list": [], + "sort_by_collection": [], + "sort_option": "order", + "search_query": "", + "search_url": "", + "product_list": [], + "paging_collection": [], + "paging_count": 0 + }, + { + "id": 15, + "name": "\u1ed4 C\u1ee9ng HDD", + "attribute_filter_list": [], + "brand_filter_list": [], + "price_filter_list": [], + "sort_by_collection": [], + "sort_option": "order", + "search_query": "", + "search_url": "", + "product_list": [], + "paging_collection": [], + "paging_count": 0 + }, + { + "id": 6, + "name": "VGA", + "attribute_filter_list": [], + "brand_filter_list": [], + "price_filter_list": [], + "sort_by_collection": [], + "sort_option": "order", + "search_query": "", + "search_url": "", + "product_list": [], + "paging_collection": [], + "paging_count": 0 + }, + { + "id": 7, + "name": "Ngu\u1ed3n", + "attribute_filter_list": [], + "brand_filter_list": [], + "price_filter_list": [], + "sort_by_collection": [], + "sort_option": "order", + "search_query": "", + "search_url": "", + "product_list": [], + "paging_collection": [], + "paging_count": 0 + }, + { + "id": 8, + "name": "V\u1ecf Case", + "attribute_filter_list": [], + "brand_filter_list": [], + "price_filter_list": [], + "sort_by_collection": [], + "sort_option": "order", + "search_query": "", + "search_url": "", + "product_list": [], + "paging_collection": [], + "paging_count": 0 + }, + { + "id": 22, + "name": "Qu\u1ea1t T\u1ea3n Nhi\u1ec7t", + "attribute_filter_list": [], + "brand_filter_list": [], + "price_filter_list": [], + "sort_by_collection": [], + "sort_option": "order", + "search_query": "", + "search_url": "", + "product_list": [], + "paging_collection": [], + "paging_count": 0 + }, + { + "id": 17, + "name": "T\u1ea3n Nhi\u1ec7t CPU", + "attribute_filter_list": [], + "brand_filter_list": [], + "price_filter_list": [], + "sort_by_collection": [], + "sort_option": "order", + "search_query": "", + "search_url": "", + "product_list": [], + "paging_collection": [], + "paging_count": 0 + }, + { + "id": 28, + "name": "T\u1ea3n Nhi\u1ec7t N\u01b0\u1edbc AIO", + "attribute_filter_list": [], + "brand_filter_list": [], + "price_filter_list": [], + "sort_by_collection": [], + "sort_option": "order", + "search_query": "", + "search_url": "", + "product_list": [], + "paging_collection": [], + "paging_count": 0 + }, + { + "id": 9, + "name": "M\u00e0n H\u00ecnh", + "attribute_filter_list": [], + "brand_filter_list": [], + "price_filter_list": [], + "sort_by_collection": [], + "sort_option": "order", + "search_query": "", + "search_url": "", + "product_list": [], + "paging_collection": [], + "paging_count": 0 + }, + { + "id": 18, + "name": "B\u00e0n ph\u00edm", + "attribute_filter_list": [], + "brand_filter_list": [], + "price_filter_list": [], + "sort_by_collection": [], + "sort_option": "order", + "search_query": "", + "search_url": "", + "product_list": [], + "paging_collection": [], + "paging_count": 0 + }, + { + "id": 19, + "name": "Chu\u1ed9t", + "attribute_filter_list": [], + "brand_filter_list": [], + "price_filter_list": [], + "sort_by_collection": [], + "sort_option": "order", + "search_query": "", + "search_url": "", + "product_list": [], + "paging_collection": [], + "paging_count": 0 + }, + { + "id": 26, + "name": "Tai Nghe", + "attribute_filter_list": [], + "brand_filter_list": [], + "price_filter_list": [], + "sort_by_collection": [], + "sort_option": "order", + "search_query": "", + "search_url": "", + "product_list": [], + "paging_collection": [], + "paging_count": 0 + }, + { + "id": 74, + "name": "B\u00e0n M\u00e1y M\u00e1y T\u00ednh", + "attribute_filter_list": [], + "brand_filter_list": [], + "price_filter_list": [], + "sort_by_collection": [], + "sort_option": "order", + "search_query": "", + "search_url": "", + "product_list": [], + "paging_collection": [], + "paging_count": 0 + }, + { + "id": 90, + "name": "Gh\u1ebf Gaming", + "attribute_filter_list": [], + "brand_filter_list": [], + "price_filter_list": [], + "sort_by_collection": [], + "sort_option": "order", + "search_query": "", + "search_url": "", + "product_list": [], + "paging_collection": [], + "paging_count": 0 + }, + { + "id": 23, + "name": "Thi\u1ebft B\u1ecb M\u1ea1ng", + "attribute_filter_list": [], + "brand_filter_list": [], + "price_filter_list": [], + "sort_by_collection": [], + "sort_option": "order", + "search_query": "", + "search_url": "", + "product_list": [], + "paging_collection": [], + "paging_count": 0 + } +] \ No newline at end of file diff --git a/src/data/buildpc/index.tsx b/src/data/buildpc/index.tsx new file mode 100644 index 0000000..d5b3e71 --- /dev/null +++ b/src/data/buildpc/index.tsx @@ -0,0 +1,81 @@ +export const buildPcData = { + keywords : "Xây dựng máy tính, tạo máy tính", + description : "Xây dựng máy tính theo cách chuyên nghiệp nhất", + title : "Xây dựng máy tính - tạo máy tính", + canonical : "", + image: "", + category_config: [ + { + "id": 2, + "name": "B\u1ed9 vi x\u1eed l\u00fd" + }, + { + "id": 3, + "name": "Bo m\u1ea1ch ch\u1ee7" + }, + { + "id": 4, + "name": "RAM" + }, + { + "id": 16, + "name": "\u1ed4 C\u1ee9ng SSD" + }, + { + "id": 15, + "name": "\u1ed4 C\u1ee9ng HDD" + }, + { + "id": 6, + "name": "VGA" + }, + { + "id": 7, + "name": "Ngu\u1ed3n" + }, + { + "id": 8, + "name": "V\u1ecf Case" + }, + { + "id": 22, + "name": "Qu\u1ea1t T\u1ea3n Nhi\u1ec7t" + }, + { + "id": 17, + "name": "T\u1ea3n Nhi\u1ec7t CPU" + }, + { + "id": 28, + "name": "T\u1ea3n Nhi\u1ec7t N\u01b0\u1edbc AIO" + }, + { + "id": 9, + "name": "M\u00e0n H\u00ecnh" + }, + { + "id": 18, + "name": "B\u00e0n ph\u00edm" + }, + { + "id": 19, + "name": "Chu\u1ed9t" + }, + { + "id": 26, + "name": "Tai Nghe" + }, + { + "id": 74, + "name": "B\u00e0n M\u00e1y M\u00e1y T\u00ednh" + }, + { + "id": 90, + "name": "Gh\u1ebf Gaming" + }, + { + "id": 23, + "name": "Thi\u1ebft B\u1ecb M\u1ea1ng" + } + ] +} \ No newline at end of file diff --git a/src/lib/useFancyBox.ts b/src/hooks/useFancyBox.ts similarity index 100% rename from src/lib/useFancyBox.ts rename to src/hooks/useFancyBox.ts diff --git a/src/styles/buildpc.css b/src/styles/buildpc.css new file mode 100644 index 0000000..f4bd3de --- /dev/null +++ b/src/styles/buildpc.css @@ -0,0 +1,148 @@ +.buildpc-page{padding:20px 0} +.buildpc-page .page-title{font-size:25px;text-align:center;text-transform:uppercase;margin:0 0 20px} +.buildpc-page .btn-buildpc-group{margin:10px 0;display:flex;align-items:center;flex-wrap:wrap} +.buildpc-page .btn-buildpc-group a,.buildpc-page .buildpc-detail-group .btn-reset,.buildpc-page .btn-buildpc-group button,.buildpc-page .buildpc-detail-group .btn-reset{color:#fff;background:#bbb;margin:0 10px 10px 0;border-radius:4px;line-height:20px;font-size:14px;padding:10px 15px;font-weight:700;text-transform:uppercase;transition:.1s all} +.buildpc-page .btn-buildpc-group .active,.buildpc-page .btn-buildpc-group a:hover,.buildpc-page .buildpc-detail-group .btn-reset, +.buildpc-page .btn-buildpc-group .active,.buildpc-page .btn-buildpc-group button:hover,.buildpc-page .buildpc-detail-group .btn-reset{background:#D91605} +.buildpc-page .buildpc-detail-group{margin:24px 0;display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between} +.buildpc-page .buildpc-detail-group .btn-reset:hover{background:#af1507} +.buildpc-page .buildpc-info-group > p{text-align:right;font-size:18px;font-weight:500;margin: 0} +.buildpc-page .buildpc-promotion-content {display: table;margin: auto 0 auto auto;} +.buildpc-page .buildpc-promotion-content table{border-collapse:collapse;margin-top:10px} +.buildpc-page .buildpc-promotion-content table tr:first-child,.buildpc-page .buildpc-promotion-content table tr:last-child{background:#eb0a0a;color:#fff} +.buildpc-page .buildpc-promotion-content table tr{background:#ff0;color:#000;font-weight:600} +.buildpc-page .buildpc-promotion-content table td{padding:7px 9px;border:1px solid #a06161} +.buildpc-page .buildpc-promotion-content table td:last-child{text-align:right} +.buildpc-page .buildpc-btn-action{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:20px 0 40px} +.buildpc-page .buildpc-btn-action .item{font-size: 16px;font-weight: 500;height: 52px;border-radius: 40px;border: 1px solid #259AFF;color: #fff;text-transform: uppercase;display: flex;align-items: center;justify-content: center;gap: 8px;padding: 0 24px;background: linear-gradient(165.29deg, #259AFF 8.53%, #114CDD 93.19%);} +.buildpc-page .buildpc-btn-action .btn-cart {background: linear-gradient(148.21deg, #FFD83E -14.02%, #FF4E2A 70.14%) !important;border-color: transparent !important;padding: 0 35px} +.buildpc-page .buildpc-btn-action .item:hover, .buildpc-holder-container .item-drive .open-selection:hover{background:#0678DB;color: #fff} +.buildpc-holder-container{border:1px solid #e1e1e1;min-height: 300px;margin-bottom: 20px;overflow: hidden;border-radius: 24px;background: #fff} +.buildpc-holder-container p{margin: 0} +.buildpc-holder-container .item-drive{border-bottom:1px solid #e1e1e1;display:flex;flex-wrap:wrap;line-height:22px;overflow: hidden;align-items: center} +.buildpc-holder-container .item-drive:last-child{border-bottom: 0} +.buildpc-holder-container .item-drive .item-title{margin: 0;padding:16px;font-weight:600;text-transform:uppercase;width:220px;font-size: 14px} +.buildpc-holder-container .item-drive .item-drive-info{width:calc(100% - 220px);padding:16px;border-left: 1px solid #e1e1e1} +.buildpc-holder-container .item-drive .open-selection{cursor: pointer;background: #fff;height: 38px;border: 1px solid #259AFF;border-radius: 40px;color: #0678DB;font-size: 14px;font-weight: 500;display: inline-flex;align-items: center;gap: 4px;padding: 0 16px;text-transform: uppercase;} +.buildpc-holder-container .item-drive .open-selection .bx{font-size: 18px} +.buildpc-page .contain-item-drive{background: #fff;margin: -47px -16px -12px;position: relative;z-index: 1;display: flex;flex-wrap: wrap;align-items: flex-start;padding: 16px;} +.buildpc-page .contain-item-drive .item-img{width:80px;margin:0 10px 0 0} +.buildpc-page .contain-item-drive .item-text{width:calc(100% - 90px);display:flex;flex-wrap:wrap;align-items:flex-start} +.buildpc-page .contain-item-drive .item-name {display: table;color: #004BA4;font-weight: 600;line-height: 18px;font-size: 14px;margin-bottom: 4px} +.buildpc-page .contain-item-drive .item-left{width:420px;font-size: 13px; line-height: 16px} +.buildpc-page .contain-item-drive .item-left p{margin: 0 0 4px} +.buildpc-page .contain-item-drive .item-right{width:calc(100% - 420px);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding-left: 20px} +.buildpc-page .contain-item-drive .item-right .item-quantity{text-align:center;width:50px;height:30px;border:1px solid #ccc;border-radius:4px;font-weight:700;outline:none;margin: 0;padding: 0 5px;} +.buildpc-page .contain-item-drive .item-right .item-button-group {display: flex;align-items: center;gap: 12px;} +.buildpc-page .contain-item-drive .item-quantity-group{margin-right:28px;display: flex;align-items: center;gap: 20px;width: calc(100% - 120px);justify-content: space-between;text-align: center;} +.buildpc-page .contain-item-drive .item-quantity-group > span{text-align:center;padding:0 5px} +.buildpc-page .contain-item-drive .item-quantity-group > b {width: calc(50% - 65px)} +.buildpc-page .contain-item-drive .item-quantity-group .item-price{color:#f71400} +.buildpc-page .contain-item-drive .btn-action_seclect{cursor: pointer;border: 1px solid #DFE4EC;border-radius: 50%;width: 40px;height: 40px;line-height: 39px;font-size: 20px;color: #0678DB;background: #EAF1FF;} +.buildpc-page .contain-item-drive .delete_select{border-color:#E7D9D9;background: #F8F3F3;color: #BE1F2D} +.buildpc-page .contain-item-drive input::-webkit-outer-spin-button,.buildpc-page .contain-item-drive input::-webkit-inner-spin-button{-webkit-appearance:none} +.buildpc-page .contain-item-drive input[type=number]{-moz-appearance:textfield} +.buildpc-popup input,.buildpc-popup button{outline:none} +.buildpc-popup .popup-bg{position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:9999;cursor:pointer} +.buildpc-popup .popup-select{width:80vw;height:92vh;background:#fff;overflow:hidden} +.buildpc-popup .popup-header{background:#0676DA;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:10px 15px} +.buildpc-popup .popup-header p{margin:0 40px 0 0;font-weight:600;font-size:20px;line-height: 25px;white-space: nowrap} +.buildpc-popup .popup-header .close-popup{background:transparent;color:#fff;border:0;margin:0;padding:0;cursor:pointer;font-size:20px} +.buildpc-popup .popup-header .icon-menu-filter-mobile{font-size:18px;font-weight:700;cursor:pointer;display:none} +.buildpc-popup .popup-header .icon-menu-filter-mobile span{display:none} +.buildpc-popup .popup-header .popup-search-holder{width:631px;background:#Fff;display:flex;align-items:center;justify-content:space-between;border-radius:333px;overflow:hidden;padding: 4px;margin-right: 240px} +.buildpc-popup .popup-header .popup-search-holder input{width:calc(100% - 28px);height:28px;border:0;margin:0;padding:0 12px;color: #000} +.buildpc-popup .popup-header .popup-search-holder .btn-search{border:0;padding:0;margin:0;width:28px;height:28px;font-size:16px;cursor:pointer} +.buildpc-popup .popup-header .popup-search-holder .btn-search .icon-search {background-position: -28px -3px;transform: scale(0.8);} +.buildpc-popup .popup-main{display:flex;flex-wrap:wrap;height:calc(100% - 54px)} +.buildpc-popup .popup-filter-group{width:29%;border-right:1px solid #e1e1e1;padding:16px;height:100%;background: #f1f1f1} +.buildpc-popup .popup-content-group{width:71%;height:100%;padding-right: 10px} +.buildpc-popup .popup-filter-group .group-titlle{font-size: 18px;font-weight: 600;display:block;line-height: 23px;margin-bottom: 16px;} +.buildpc-popup .popup-filter-holder{height:calc(100% - 39px);overflow:auto;margin:0 -10px 0 0;padding:0 15px 0 0} +.buildpc-popup .popup-filter-holder::-webkit-scrollbar-track,.buildpc-popup .popup-product-list::-webkit-scrollbar-track{background:#f5f5f5} +.buildpc-popup .popup-filter-holder::-webkit-scrollbar-thumb,.buildpc-popup .popup-product-list::-webkit-scrollbar-thumb{background:grey;border-radius:2px} +.buildpc-popup .popup-filter-holder::-webkit-scrollbar,.buildpc-popup .popup-product-list::-webkit-scrollbar{width:8px;height:10px} +.buildpc-popup .filter-item{margin-bottom:16px} +.buildpc-popup .filter-item .filter-name{display: block;font-weight: 600;margin: 0 0 8px;font-size: 14px;line-height: 18px;} +.buildpc-popup .filter-list-holder{display:flex;flex-wrap:wrap;justify-content:space-between;font-size: 13px;line-height: 18px} +.buildpc-popup .filter-list-holder label{display:flex;align-items:center;gap: 4px;width:48%;margin:0 0 8px;cursor:pointer} +.buildpc-popup .filter-list-holder label:hover{color:#0676DA} +.buildpc-popup .sort-paging-group{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;background: #f8f8f8;padding: 8px 12px 8px 16px;margin-right: -10px} +.buildpc-popup .sort-paging-group select{cursor:pointer;outline:none;height: 26px;margin-left: 5px;background: #F2F2F2;border-radius: 30px;padding: 0 10px;} +.buildpc-popup .sort-paging-group .popup-paging{display:flex;align-items:center;} +.buildpc-popup .sort-paging-group .popup-paging a{width: 32px;line-height: 32px;min-width: 32px;text-align: center;margin: 0 2px 0 0;border-radius: 8px;transition: .15s all;font-weight: 500;font-size: 14px;} +.buildpc-popup .sort-paging-group .popup-paging a:last-child{margin:0} +.buildpc-popup .sort-paging-group .popup-paging .active,.buildpc-popup .sort-paging-group .popup-paging a:hover{color:#fff;background:#0678DB;border-color:transparent} +.buildpc-popup .popup-product-list{height:calc(100% - 48px);overflow:auto;margin-right:-10px;padding-right:10px} +.buildpc-popup .p-item{border-top:1px solid #e1e1e1;padding:20px 16px;display:flex;flex-wrap:wrap;align-items:flex-start} +.buildpc-popup .p-item:first-child{border-top:0} +.buildpc-popup .p-item img{position: unset} +.buildpc-popup .p-item .item-img{width:130px;margin-right:10px;} +.buildpc-popup .p-item .btn-buy:hover{box-shadow:0 1px 6px 0 rgba(0,0,0,0.2)} +.buildpc-popup .p-item .item-text{margin:0 16px 0 0;width: calc(100% - 192px);} +.buildpc-popup .p-item .item-name{display: table;font-weight: 600;font-size: 16px;line-height: 18px;margin: 0 0 8px;color: #004BA4;} +.buildpc-popup .p-item .item-info{line-height:16px;font-size:13px;margin:2px 0} +.buildpc-popup .p-item .p-price{color:#FF4E2A;font-weight:600;font-size:16px;line-height:21px;width: auto} +.buildpc-popup .p-item .mask-popup .offer-list-group li::before {content: '- ';} +.buildpc-popup-container{display:none;padding: 0 !important;border-radius: 10px !important;min-width: 400px;position: relative;} +.buildpc-popup-container .popup-content-group{background: #fff;z-index: 102;border-radius: 8px;padding: 30px 20px;} +.buildpc-popup-container .popup-content-group .group-title{display:block;text-align:center;font-weight:700;text-transform:uppercase;font-size:20px;margin:0 0 17px} +.buildpc-popup-container .popup-content-group input[type="text"]{display:block;width:100%;border:1px solid #e1e1e1;outline:none;border-radius:3px;height:40px;padding:0 10px} +.buildpc-popup-container .btn-close{border:0;padding:0;margin:0;cursor:pointer;position:absolute;top:-9px;right:-11px;background:#000;color:#fff;width:26px;height:26px;border-radius:50%;font-size:18px} +.buildpc-popup-container .popup-btn-group{display:flex;align-items:center;justify-content:center;margin:15px 0} +.buildpc-popup-container .popup-btn-group button{margin:0 10px;height:34px;font-weight:700;text-transform:uppercase;border:1px solid #ccc;cursor:pointer;padding:0 10px;min-width:100px;border-radius:4px;transition:.2s all} +.buildpc-popup-container .popup-btn-group button:hover{box-shadow:0 1px 6px 0 rgba(0,0,0,0.3)} +.buildpc-popup-container .popup-btn-group .btn-red{border-color: transparent} +.is-close-button {position: absolute;top: -38px;right: 0;background: transparent;color: #fff} +.buildpc-popup-rebuild{font-size:16px} +.buildpc-popup-rebuild .popup-content-group{text-align:center} +.buildpc-popup-rebuild .popup-content-group b,.buildpc-popup-rebuild .popup-content-group i{display:block} +.buildpc-popup-rebuild .popup-content-group b{margin:20px 0 13px;font-size:23px} +.buildpc-popup-rebuild .popup-content-group p{margin:0 0 27px} +.buildpc-popup-rebuild .popup-content-group .fa-exclamation-circle{color:#d00;font-size:40px} +.p-offer-container{position:relative;margin-top:5px} +.p-offer-container .box-title{color:#0d699e;cursor:pointer;margin:0;display: table} +.p-offer-container .box-title::before{content: '\f06b';font-family: 'Font Awesome 5 Free';margin-right:5px;font-weight: 600;} +.p-offer-container .item{position:relative;margin:5px 0 5px 18px;padding-left:20px} +.p-offer-container .item a{color:blue!important;font-weight:400!important;font-size:14px!important} +.p-offer-container .item::before{content:'\f058';font-family:"Font Awesome 5 Free";color:#d91605;position:absolute;left:0;font-weight: 600;} +.p-offer-container .item * {padding: 0;margin: 0;list-style: none} +.p-offer-container .group-title{font-weight:700;margin:10px 0 0} +.p-offer-container .offer-list-group{display:none} +.p-offer-container.active .offer-list-group{display:block} +.p-offer-container .offer-list-group *{font-size:14px} +.p-offer-container .box-title::after{content:'\f078';font-family: "Font Awesome 5 Free";margin-left:5px;font-size:10px;vertical-align:middle;font-weight: 600;} +.p-offer-container.active .box-title::after{content:'\f077';} +.popup-select-variant-container {position: fixed;inset: 0;background: rgba(0, 0, 0, 0.24);z-index: 10000;display: none;} +.popup-select-variant-container .popup-select-content{background:#fff;width:550px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 1px 5px 0 rgba(0,0,0,0.25);overflow:auto} +.popup-select-variant-container .is-close-btn {display: none;} +.popup-select-variant-container .popup-title{padding:0 12px;display:flex;align-items:center;background:#E5E1E0;justify-content:space-between;line-height:44px;font-weight:500} +.popup-select-variant-container .popup-title a{color:#000;font-size:17px} +.popup-select-variant-container .popup-select-holder{padding:10px 13px;height:calc(100% - 111px)} +.popup-select-variant-container .popup-select-holder tr,.popup-select-variant-container .popup-select-holder td{display:block} +.popup-select-variant-container .popup-select-holder .variant-option-label {text-transform: capitalize;font-weight: 600;margin: 0 0 4px;} +.popup-select-variant-container .popup-select-holder .variant-option-value-box .variant-image {display: flex;align-items: center;padding: 6px 17px 6px 12px;} +.popup-select-variant-container .popup-select-holder .variant-option-value-box .attribute-value-image {width: 25px;height: 25px;margin: 0 10px 0 0;} +.popup-select-variant-container .popup-select-holder td:nth-child(2){display:flex;flex-wrap:wrap} +.popup-select-variant-container .popup-select-btn{display:block;text-align:center;border-radius:30px;background:linear-gradient(95deg,#B00000 0%,#E93603 85.38%,#E87700 99.45%,rgba(232,49,0,0.00) 100%);font-weight:700;line-height:34px;max-width:220px;color:#F5F5F5;margin:10px auto 20px auto} +.popup-select-variant-container .popup-product-item{display:flex;flex-wrap:wrap;padding:12px 0;width:calc(100% - 24px);margin:auto;border-bottom:1px dashed #D9D9D9} +.popup-select-variant-container .popup-product-item .image{width:78px;height:78px;margin-right:12px} +.popup-select-variant-container .popup-product-item .p-text{width:calc(100% - 90px);font-weight:500} +.popup-select-variant-container .popup-product-item .name{display:block;color:#000;margin:0 0 5px} +.popup-select-variant-container .popup-product-item .price{margin:5px 0;color:#B80000;font-size:13px} +.popup-select-variant-container .popup-product-item .sku{margin:5px 0;font-size:13px;font-weight:400} +.popup-select-variant-container .popup-select-holder .variant-option-value-box a{margin:5px 8px 0 0;display:inline-block;overflow:hidden;color:#000;background:#fff;border-radius:5px;padding:10px 17px 10px 12px;text-align:center;line-height:17px;border:1px solid #d9d9d9;position: relative} +.popup-select-variant-container .popup-select-holder .variant-option-value-box .selected{border-color: #d91605} +.popup-select-variant-container .popup-select-holder .variant-option-value-box .selected::before {content: "";border-top: 26px solid #d91605;border-left: 26px solid transparent;position: absolute;top: 0;right: 0;} +.popup-select-variant-container .popup-select-holder .variant-option-value-box .selected::after {content: "\f00c";font-family: "Font Awesome 5 Free";font-weight: 900;color: #fff;position: absolute;top: -1px;right: 4px;font-size: 8px;} +.popup-select-variant-container .popup-select-holder tr{margin-bottom:10px} +.popup-select-variant-container .popup-variant-btn{display:flex;align-items:center;justify-content:space-between;padding:0 12px 12px} +.popup-select-variant-container .popup-variant-btn .popup-select-btn{max-width:100%;margin:0} +.popup-select-variant-container .popup-variant-btn a{width:calc(50% - 5px);text-align:center} +.popup-select-variant-container .popup-variant-btn a:last-child{color:#E93603;border:1px solid #E93603;font-weight:500;line-height:34px;border-radius:30px;overflow:hidden} +.buildpc-popup .mobile-btn-close {display: none;} +.buildpc-modal-popup-container{background: transparent !important;border-radius: 12px;overflow: hidden} +.buildpc-static-content {max-width: 924px;margin: auto} +.buildpc-popup .btn-close {font-size: 24px;} +.buildpc-popup .filter-list-holder label input {appearance: none;width: 18px;height: 18px;background: #fff;border: 1px solid #DFE4EC;border-radius: 4px} +.buildpc-popup .filter-list-holder label input:checked {appearance: auto;height: 14px} \ No newline at end of file