diff --git a/backend/ruoyi-admin/target/classes/application-druid.yml b/backend/ruoyi-admin/target/classes/application-druid.yml
deleted file mode 100644
index 42908c0..0000000
--- a/backend/ruoyi-admin/target/classes/application-druid.yml
+++ /dev/null
@@ -1,61 +0,0 @@
-# 数据源配置
-spring:
- datasource:
- type: com.alibaba.druid.pool.DruidDataSource
- driverClassName: com.mysql.cj.jdbc.Driver
- druid:
- # 主库数据源
- master:
- url: jdbc:mysql://localhost:3306/hauyang?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
- username: root
- password: root
- # 从库数据源
- slave:
- # 从数据源开关/默认关闭
- enabled: false
- url:
- username:
- password:
- # 初始连接数
- initialSize: 5
- # 最小连接池数量
- minIdle: 10
- # 最大连接池数量
- maxActive: 20
- # 配置获取连接等待超时的时间
- maxWait: 60000
- # 配置连接超时时间
- connectTimeout: 30000
- # 配置网络超时时间
- socketTimeout: 60000
- # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
- timeBetweenEvictionRunsMillis: 60000
- # 配置一个连接在池中最小生存的时间,单位是毫秒
- minEvictableIdleTimeMillis: 300000
- # 配置一个连接在池中最大生存的时间,单位是毫秒
- maxEvictableIdleTimeMillis: 900000
- # 配置检测连接是否有效
- validationQuery: SELECT 1 FROM DUAL
- testWhileIdle: true
- testOnBorrow: false
- testOnReturn: false
- webStatFilter:
- enabled: true
- statViewServlet:
- enabled: true
- # 设置白名单,不填则允许所有访问
- allow:
- url-pattern: /druid/*
- # 控制台管理用户名和密码
- login-username: ruoyi
- login-password: 123456
- filter:
- stat:
- enabled: true
- # 慢SQL记录
- log-slow-sql: true
- slow-sql-millis: 1000
- merge-sql: true
- wall:
- config:
- multi-statement-allow: true
\ No newline at end of file
diff --git a/frontend/docs/static-image-offline-manifest.md b/frontend/docs/static-image-offline-manifest.md
new file mode 100644
index 0000000..e7562df
--- /dev/null
+++ b/frontend/docs/static-image-offline-manifest.md
@@ -0,0 +1,27 @@
+# 静态图片下线清单
+
+生成时间:2026-05-07
+
+## 1) 可删图片清单(`*_files`)
+
+按 `frontend/public/**/*_files/*.{jpg,jpeg,png,gif,webp,svg}` 扫描结果:
+
+- `品质技术_files`:未发现可删图片(仅 `no-img.svg` 占位图)
+- `全国门店_files`:未发现可删图片(仅 `no-img.svg` 占位图)
+
+说明:历史业务图片文件已不在上述目录中;当前目录以 CSS/JS 资源为主。
+
+## 2) 保留文件清单(避免布局脚本受影响)
+
+以下类型保留,不在本次下线范围:
+
+- `*.css`
+- `*.js.下载`
+- `api`(目录/数据文件)
+- `no-img.svg`(兜底占位图)
+
+## 3) 下线策略状态
+
+- 已启用运行时改写:`*_files` 本地图片路径自动改写为 fastimg 远程地址
+- 已加固兼容路径:支持 `./`、`../`、`/` 三种 `_files` 写法
+- 已增加兜底:无法识别文件名时回退 `assets/no-img.svg`
diff --git a/frontend/public/assets/012b21bc-782a-4576-9a07-1482e0b9ecb7.jpg_560xaf.jpg b/frontend/public/assets/012b21bc-782a-4576-9a07-1482e0b9ecb7.jpg_560xaf.jpg
deleted file mode 100644
index d474b64..0000000
Binary files a/frontend/public/assets/012b21bc-782a-4576-9a07-1482e0b9ecb7.jpg_560xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/01f900ec-c2ab-4b24-983d-c469eda9d9e5.jpg_560xaf.jpg b/frontend/public/assets/01f900ec-c2ab-4b24-983d-c469eda9d9e5.jpg_560xaf.jpg
deleted file mode 100644
index 9a0a579..0000000
Binary files a/frontend/public/assets/01f900ec-c2ab-4b24-983d-c469eda9d9e5.jpg_560xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/042ceeee-59ed-47f0-8585-186da1520fe1-1.jpg b/frontend/public/assets/042ceeee-59ed-47f0-8585-186da1520fe1-1.jpg
deleted file mode 100644
index 45f4804..0000000
Binary files a/frontend/public/assets/042ceeee-59ed-47f0-8585-186da1520fe1-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/042ceeee-59ed-47f0-8585-186da1520fe1.jpg b/frontend/public/assets/042ceeee-59ed-47f0-8585-186da1520fe1.jpg
deleted file mode 100644
index 45f4804..0000000
Binary files a/frontend/public/assets/042ceeee-59ed-47f0-8585-186da1520fe1.jpg and /dev/null differ
diff --git a/frontend/public/assets/05e052d7-73d3-4024-9ed6-367a65a6975b-1.jpg b/frontend/public/assets/05e052d7-73d3-4024-9ed6-367a65a6975b-1.jpg
deleted file mode 100644
index 2cb44fa..0000000
Binary files a/frontend/public/assets/05e052d7-73d3-4024-9ed6-367a65a6975b-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/05e052d7-73d3-4024-9ed6-367a65a6975b.jpg b/frontend/public/assets/05e052d7-73d3-4024-9ed6-367a65a6975b.jpg
deleted file mode 100644
index 2cb44fa..0000000
Binary files a/frontend/public/assets/05e052d7-73d3-4024-9ed6-367a65a6975b.jpg and /dev/null differ
diff --git a/frontend/public/assets/05e55956-2463-4314-9f28-bdc4c160100d.png b/frontend/public/assets/05e55956-2463-4314-9f28-bdc4c160100d.png
deleted file mode 100644
index fec5f37..0000000
Binary files a/frontend/public/assets/05e55956-2463-4314-9f28-bdc4c160100d.png and /dev/null differ
diff --git a/frontend/public/assets/06bc7cd4-3b7d-4247-a81c-bceb118b6d81-1.jpg b/frontend/public/assets/06bc7cd4-3b7d-4247-a81c-bceb118b6d81-1.jpg
deleted file mode 100644
index 7b3af3f..0000000
Binary files a/frontend/public/assets/06bc7cd4-3b7d-4247-a81c-bceb118b6d81-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/06bc7cd4-3b7d-4247-a81c-bceb118b6d81.jpg b/frontend/public/assets/06bc7cd4-3b7d-4247-a81c-bceb118b6d81.jpg
deleted file mode 100644
index 7b3af3f..0000000
Binary files a/frontend/public/assets/06bc7cd4-3b7d-4247-a81c-bceb118b6d81.jpg and /dev/null differ
diff --git a/frontend/public/assets/06cd51aa-048e-43f0-a8fd-a553842b34aa-1.jpg b/frontend/public/assets/06cd51aa-048e-43f0-a8fd-a553842b34aa-1.jpg
deleted file mode 100644
index dfd5540..0000000
Binary files a/frontend/public/assets/06cd51aa-048e-43f0-a8fd-a553842b34aa-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/06cd51aa-048e-43f0-a8fd-a553842b34aa-2.jpg b/frontend/public/assets/06cd51aa-048e-43f0-a8fd-a553842b34aa-2.jpg
deleted file mode 100644
index dfd5540..0000000
Binary files a/frontend/public/assets/06cd51aa-048e-43f0-a8fd-a553842b34aa-2.jpg and /dev/null differ
diff --git a/frontend/public/assets/06cd51aa-048e-43f0-a8fd-a553842b34aa.jpg b/frontend/public/assets/06cd51aa-048e-43f0-a8fd-a553842b34aa.jpg
deleted file mode 100644
index dfd5540..0000000
Binary files a/frontend/public/assets/06cd51aa-048e-43f0-a8fd-a553842b34aa.jpg and /dev/null differ
diff --git a/frontend/public/assets/1111143289ea0ba.jpg b/frontend/public/assets/1111143289ea0ba.jpg
deleted file mode 100644
index 2e9dacf..0000000
Binary files a/frontend/public/assets/1111143289ea0ba.jpg and /dev/null differ
diff --git a/frontend/public/assets/111115f45b28f00.jpg b/frontend/public/assets/111115f45b28f00.jpg
deleted file mode 100644
index 1d92ad5..0000000
Binary files a/frontend/public/assets/111115f45b28f00.jpg and /dev/null differ
diff --git a/frontend/public/assets/1223df180d1a92.png b/frontend/public/assets/1223df180d1a92.png
deleted file mode 100644
index 964248a..0000000
Binary files a/frontend/public/assets/1223df180d1a92.png and /dev/null differ
diff --git a/frontend/public/assets/124186b4-f1f9-44e2-a436-a4482fe559b8.jpg_560xaf.jpg b/frontend/public/assets/124186b4-f1f9-44e2-a436-a4482fe559b8.jpg_560xaf.jpg
deleted file mode 100644
index 8417c29..0000000
Binary files a/frontend/public/assets/124186b4-f1f9-44e2-a436-a4482fe559b8.jpg_560xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/129c2973c7286b.png b/frontend/public/assets/129c2973c7286b.png
deleted file mode 100644
index 8329a00..0000000
Binary files a/frontend/public/assets/129c2973c7286b.png and /dev/null differ
diff --git a/frontend/public/assets/13b83caddbcf011e0b50eee03b26c7ba.png b/frontend/public/assets/13b83caddbcf011e0b50eee03b26c7ba.png
deleted file mode 100644
index d7fc421..0000000
Binary files a/frontend/public/assets/13b83caddbcf011e0b50eee03b26c7ba.png and /dev/null differ
diff --git a/frontend/public/assets/13c80529-c446-4850-affb-408badf8209c-1.jpg b/frontend/public/assets/13c80529-c446-4850-affb-408badf8209c-1.jpg
deleted file mode 100644
index ee653ff..0000000
Binary files a/frontend/public/assets/13c80529-c446-4850-affb-408badf8209c-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/13c80529-c446-4850-affb-408badf8209c-2.jpg b/frontend/public/assets/13c80529-c446-4850-affb-408badf8209c-2.jpg
deleted file mode 100644
index ee653ff..0000000
Binary files a/frontend/public/assets/13c80529-c446-4850-affb-408badf8209c-2.jpg and /dev/null differ
diff --git a/frontend/public/assets/13c80529-c446-4850-affb-408badf8209c.jpg b/frontend/public/assets/13c80529-c446-4850-affb-408badf8209c.jpg
deleted file mode 100644
index ee653ff..0000000
Binary files a/frontend/public/assets/13c80529-c446-4850-affb-408badf8209c.jpg and /dev/null differ
diff --git a/frontend/public/assets/1446ae65-219c-4b01-8955-11b24982fc55.png b/frontend/public/assets/1446ae65-219c-4b01-8955-11b24982fc55.png
deleted file mode 100644
index 999e5b8..0000000
Binary files a/frontend/public/assets/1446ae65-219c-4b01-8955-11b24982fc55.png and /dev/null differ
diff --git a/frontend/public/assets/14fe6575-3006-42c4-b75a-9644d95f2006.png_366xaf.png b/frontend/public/assets/14fe6575-3006-42c4-b75a-9644d95f2006.png_366xaf.png
deleted file mode 100644
index 7cea54e..0000000
Binary files a/frontend/public/assets/14fe6575-3006-42c4-b75a-9644d95f2006.png_366xaf.png and /dev/null differ
diff --git a/frontend/public/assets/151dfdaf-d6ab-4fb1-b4dd-eeb74c4ae3da.jpg b/frontend/public/assets/151dfdaf-d6ab-4fb1-b4dd-eeb74c4ae3da.jpg
deleted file mode 100644
index 9166d68..0000000
Binary files a/frontend/public/assets/151dfdaf-d6ab-4fb1-b4dd-eeb74c4ae3da.jpg and /dev/null differ
diff --git a/frontend/public/assets/151dfdaf-d6ab-4fb1-b4dd-eeb74c4ae3da.jpg_366xaf.jpg b/frontend/public/assets/151dfdaf-d6ab-4fb1-b4dd-eeb74c4ae3da.jpg_366xaf.jpg
deleted file mode 100644
index 0d1eff6..0000000
Binary files a/frontend/public/assets/151dfdaf-d6ab-4fb1-b4dd-eeb74c4ae3da.jpg_366xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/1539cb7b6aa332.jpg b/frontend/public/assets/1539cb7b6aa332.jpg
deleted file mode 100644
index 907badd..0000000
Binary files a/frontend/public/assets/1539cb7b6aa332.jpg and /dev/null differ
diff --git a/frontend/public/assets/156092c2d0dbe1.gif b/frontend/public/assets/156092c2d0dbe1.gif
deleted file mode 100644
index 43a3e27..0000000
Binary files a/frontend/public/assets/156092c2d0dbe1.gif and /dev/null differ
diff --git a/frontend/public/assets/184447c33cc45b.png b/frontend/public/assets/184447c33cc45b.png
deleted file mode 100644
index b87d046..0000000
Binary files a/frontend/public/assets/184447c33cc45b.png and /dev/null differ
diff --git a/frontend/public/assets/18444b40e9487d.jpg b/frontend/public/assets/18444b40e9487d.jpg
deleted file mode 100644
index 11ccc25..0000000
Binary files a/frontend/public/assets/18444b40e9487d.jpg and /dev/null differ
diff --git a/frontend/public/assets/18444e99e0fa9e.png b/frontend/public/assets/18444e99e0fa9e.png
deleted file mode 100644
index e4812f1..0000000
Binary files a/frontend/public/assets/18444e99e0fa9e.png and /dev/null differ
diff --git a/frontend/public/assets/185afeeab65444.png b/frontend/public/assets/185afeeab65444.png
deleted file mode 100644
index 689a46a..0000000
Binary files a/frontend/public/assets/185afeeab65444.png and /dev/null differ
diff --git a/frontend/public/assets/185b0322bec52b.png b/frontend/public/assets/185b0322bec52b.png
deleted file mode 100644
index c15a71d..0000000
Binary files a/frontend/public/assets/185b0322bec52b.png and /dev/null differ
diff --git a/frontend/public/assets/185b06432135dc.png b/frontend/public/assets/185b06432135dc.png
deleted file mode 100644
index 68a6888..0000000
Binary files a/frontend/public/assets/185b06432135dc.png and /dev/null differ
diff --git a/frontend/public/assets/185b097b233aa8.png b/frontend/public/assets/185b097b233aa8.png
deleted file mode 100644
index f79f01a..0000000
Binary files a/frontend/public/assets/185b097b233aa8.png and /dev/null differ
diff --git a/frontend/public/assets/19ee30c37395ee21d738be878d3f8c60.png b/frontend/public/assets/19ee30c37395ee21d738be878d3f8c60.png
deleted file mode 100644
index 6ee029c..0000000
Binary files a/frontend/public/assets/19ee30c37395ee21d738be878d3f8c60.png and /dev/null differ
diff --git a/frontend/public/assets/1ac14cb2-fe53-47e2-87e3-fb46a343773d-1.jpg b/frontend/public/assets/1ac14cb2-fe53-47e2-87e3-fb46a343773d-1.jpg
deleted file mode 100644
index ca6dff4..0000000
Binary files a/frontend/public/assets/1ac14cb2-fe53-47e2-87e3-fb46a343773d-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/1ac14cb2-fe53-47e2-87e3-fb46a343773d.jpg b/frontend/public/assets/1ac14cb2-fe53-47e2-87e3-fb46a343773d.jpg
deleted file mode 100644
index ca6dff4..0000000
Binary files a/frontend/public/assets/1ac14cb2-fe53-47e2-87e3-fb46a343773d.jpg and /dev/null differ
diff --git a/frontend/public/assets/1af534e3-6655-46ec-beb3-e30f45c54a4e.jpg b/frontend/public/assets/1af534e3-6655-46ec-beb3-e30f45c54a4e.jpg
deleted file mode 100644
index 8bd4fa1..0000000
Binary files a/frontend/public/assets/1af534e3-6655-46ec-beb3-e30f45c54a4e.jpg and /dev/null differ
diff --git a/frontend/public/assets/1c9435145e94ca.png b/frontend/public/assets/1c9435145e94ca.png
deleted file mode 100644
index 1d7869d..0000000
Binary files a/frontend/public/assets/1c9435145e94ca.png and /dev/null differ
diff --git a/frontend/public/assets/1c943b57e483d1.png b/frontend/public/assets/1c943b57e483d1.png
deleted file mode 100644
index 10fa892..0000000
Binary files a/frontend/public/assets/1c943b57e483d1.png and /dev/null differ
diff --git a/frontend/public/assets/1ee9a625-1cd8-4ade-abde-4ecc7150a466.jpg b/frontend/public/assets/1ee9a625-1cd8-4ade-abde-4ecc7150a466.jpg
deleted file mode 100644
index 9d7beb2..0000000
Binary files a/frontend/public/assets/1ee9a625-1cd8-4ade-abde-4ecc7150a466.jpg and /dev/null differ
diff --git a/frontend/public/assets/21bfdc8a12108.png b/frontend/public/assets/21bfdc8a12108.png
deleted file mode 100644
index c818fe9..0000000
Binary files a/frontend/public/assets/21bfdc8a12108.png and /dev/null differ
diff --git a/frontend/public/assets/21c0176e5782f.png b/frontend/public/assets/21c0176e5782f.png
deleted file mode 100644
index dd7fa53..0000000
Binary files a/frontend/public/assets/21c0176e5782f.png and /dev/null differ
diff --git a/frontend/public/assets/23a1a45c0021df8cdea0ec0b37fb4291.png b/frontend/public/assets/23a1a45c0021df8cdea0ec0b37fb4291.png
deleted file mode 100644
index ade2a29..0000000
Binary files a/frontend/public/assets/23a1a45c0021df8cdea0ec0b37fb4291.png and /dev/null differ
diff --git a/frontend/public/assets/26d888e02a0142786f3be6daaee419f9.png b/frontend/public/assets/26d888e02a0142786f3be6daaee419f9.png
deleted file mode 100644
index 5373a3f..0000000
Binary files a/frontend/public/assets/26d888e02a0142786f3be6daaee419f9.png and /dev/null differ
diff --git a/frontend/public/assets/276fc871-3e14-4ee4-a41c-791ede5362a3-1.jpg b/frontend/public/assets/276fc871-3e14-4ee4-a41c-791ede5362a3-1.jpg
deleted file mode 100644
index 332f964..0000000
Binary files a/frontend/public/assets/276fc871-3e14-4ee4-a41c-791ede5362a3-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/276fc871-3e14-4ee4-a41c-791ede5362a3.jpg b/frontend/public/assets/276fc871-3e14-4ee4-a41c-791ede5362a3.jpg
deleted file mode 100644
index 332f964..0000000
Binary files a/frontend/public/assets/276fc871-3e14-4ee4-a41c-791ede5362a3.jpg and /dev/null differ
diff --git a/frontend/public/assets/2893fa5b364eca.png b/frontend/public/assets/2893fa5b364eca.png
deleted file mode 100644
index bf94607..0000000
Binary files a/frontend/public/assets/2893fa5b364eca.png and /dev/null differ
diff --git a/frontend/public/assets/2a2bf84af0aa0.png b/frontend/public/assets/2a2bf84af0aa0.png
deleted file mode 100644
index 25810d7..0000000
Binary files a/frontend/public/assets/2a2bf84af0aa0.png and /dev/null differ
diff --git a/frontend/public/assets/2a2c532ca3b7e.png b/frontend/public/assets/2a2c532ca3b7e.png
deleted file mode 100644
index d484627..0000000
Binary files a/frontend/public/assets/2a2c532ca3b7e.png and /dev/null differ
diff --git a/frontend/public/assets/2a2c827ba3002.png b/frontend/public/assets/2a2c827ba3002.png
deleted file mode 100644
index 0d129bb..0000000
Binary files a/frontend/public/assets/2a2c827ba3002.png and /dev/null differ
diff --git a/frontend/public/assets/2a2dd2b2fd34a.png b/frontend/public/assets/2a2dd2b2fd34a.png
deleted file mode 100644
index a61b71f..0000000
Binary files a/frontend/public/assets/2a2dd2b2fd34a.png and /dev/null differ
diff --git a/frontend/public/assets/2a2dfcfea2353.png b/frontend/public/assets/2a2dfcfea2353.png
deleted file mode 100644
index 26176ab..0000000
Binary files a/frontend/public/assets/2a2dfcfea2353.png and /dev/null differ
diff --git a/frontend/public/assets/2a2e29ba589be.png b/frontend/public/assets/2a2e29ba589be.png
deleted file mode 100644
index ea4422e..0000000
Binary files a/frontend/public/assets/2a2e29ba589be.png and /dev/null differ
diff --git a/frontend/public/assets/2a51a291c2b17.png b/frontend/public/assets/2a51a291c2b17.png
deleted file mode 100644
index 7ef6c23..0000000
Binary files a/frontend/public/assets/2a51a291c2b17.png and /dev/null differ
diff --git a/frontend/public/assets/2a8fbaac-d19a-48ca-9705-9703e65333d7.jpg b/frontend/public/assets/2a8fbaac-d19a-48ca-9705-9703e65333d7.jpg
deleted file mode 100644
index a713d00..0000000
Binary files a/frontend/public/assets/2a8fbaac-d19a-48ca-9705-9703e65333d7.jpg and /dev/null differ
diff --git a/frontend/public/assets/2bb9a1dd-fe3c-4318-804a-81bf956e3d1e.jpg_560xaf.jpg b/frontend/public/assets/2bb9a1dd-fe3c-4318-804a-81bf956e3d1e.jpg_560xaf.jpg
deleted file mode 100644
index e1a034c..0000000
Binary files a/frontend/public/assets/2bb9a1dd-fe3c-4318-804a-81bf956e3d1e.jpg_560xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/2c859639c41ec.jpg b/frontend/public/assets/2c859639c41ec.jpg
deleted file mode 100644
index a97c4f5..0000000
Binary files a/frontend/public/assets/2c859639c41ec.jpg and /dev/null differ
diff --git a/frontend/public/assets/2d4f3ecc-e354-4917-a705-07cefae4cccf.jpg b/frontend/public/assets/2d4f3ecc-e354-4917-a705-07cefae4cccf.jpg
deleted file mode 100644
index 85ff402..0000000
Binary files a/frontend/public/assets/2d4f3ecc-e354-4917-a705-07cefae4cccf.jpg and /dev/null differ
diff --git a/frontend/public/assets/2db5e1b008dcf6.png b/frontend/public/assets/2db5e1b008dcf6.png
deleted file mode 100644
index 25cbdf0..0000000
Binary files a/frontend/public/assets/2db5e1b008dcf6.png and /dev/null differ
diff --git a/frontend/public/assets/2db5e76b5f3c30.png b/frontend/public/assets/2db5e76b5f3c30.png
deleted file mode 100644
index d1b183f..0000000
Binary files a/frontend/public/assets/2db5e76b5f3c30.png and /dev/null differ
diff --git a/frontend/public/assets/2db5ed5522912e.png b/frontend/public/assets/2db5ed5522912e.png
deleted file mode 100644
index acc4d37..0000000
Binary files a/frontend/public/assets/2db5ed5522912e.png and /dev/null differ
diff --git a/frontend/public/assets/2db5fac87c8332.png b/frontend/public/assets/2db5fac87c8332.png
deleted file mode 100644
index d2ad806..0000000
Binary files a/frontend/public/assets/2db5fac87c8332.png and /dev/null differ
diff --git a/frontend/public/assets/2db5fe402dea60.png b/frontend/public/assets/2db5fe402dea60.png
deleted file mode 100644
index bdecf6d..0000000
Binary files a/frontend/public/assets/2db5fe402dea60.png and /dev/null differ
diff --git a/frontend/public/assets/2db6017f36ee7c.png b/frontend/public/assets/2db6017f36ee7c.png
deleted file mode 100644
index 9edf76a..0000000
Binary files a/frontend/public/assets/2db6017f36ee7c.png and /dev/null differ
diff --git a/frontend/public/assets/2e2be5cc-0918-4e26-a9ed-0058b0855dcf-1.jpg b/frontend/public/assets/2e2be5cc-0918-4e26-a9ed-0058b0855dcf-1.jpg
deleted file mode 100644
index 910bb78..0000000
Binary files a/frontend/public/assets/2e2be5cc-0918-4e26-a9ed-0058b0855dcf-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/2e2be5cc-0918-4e26-a9ed-0058b0855dcf.jpg b/frontend/public/assets/2e2be5cc-0918-4e26-a9ed-0058b0855dcf.jpg
deleted file mode 100644
index 910bb78..0000000
Binary files a/frontend/public/assets/2e2be5cc-0918-4e26-a9ed-0058b0855dcf.jpg and /dev/null differ
diff --git a/frontend/public/assets/301809abcd456a0.jpg b/frontend/public/assets/301809abcd456a0.jpg
deleted file mode 100644
index 3826782..0000000
Binary files a/frontend/public/assets/301809abcd456a0.jpg and /dev/null differ
diff --git a/frontend/public/assets/30180aaf77c3c60.jpg b/frontend/public/assets/30180aaf77c3c60.jpg
deleted file mode 100644
index 3826782..0000000
Binary files a/frontend/public/assets/30180aaf77c3c60.jpg and /dev/null differ
diff --git a/frontend/public/assets/33f07239-5895-4812-bfdf-36a3a1551e57.jpg b/frontend/public/assets/33f07239-5895-4812-bfdf-36a3a1551e57.jpg
deleted file mode 100644
index fdf3faf..0000000
Binary files a/frontend/public/assets/33f07239-5895-4812-bfdf-36a3a1551e57.jpg and /dev/null differ
diff --git a/frontend/public/assets/340d539b80432887304ff4d98f79b53c.png b/frontend/public/assets/340d539b80432887304ff4d98f79b53c.png
deleted file mode 100644
index d189b49..0000000
Binary files a/frontend/public/assets/340d539b80432887304ff4d98f79b53c.png and /dev/null differ
diff --git a/frontend/public/assets/3424271052f0b20.jpg b/frontend/public/assets/3424271052f0b20.jpg
deleted file mode 100644
index 00d44c1..0000000
Binary files a/frontend/public/assets/3424271052f0b20.jpg and /dev/null differ
diff --git a/frontend/public/assets/37c2476e466308.png b/frontend/public/assets/37c2476e466308.png
deleted file mode 100644
index b52fb1b..0000000
Binary files a/frontend/public/assets/37c2476e466308.png and /dev/null differ
diff --git a/frontend/public/assets/3849cb09b985ce.png b/frontend/public/assets/3849cb09b985ce.png
deleted file mode 100644
index 3a12412..0000000
Binary files a/frontend/public/assets/3849cb09b985ce.png and /dev/null differ
diff --git a/frontend/public/assets/3849cf16cb30e6.png b/frontend/public/assets/3849cf16cb30e6.png
deleted file mode 100644
index 8113a54..0000000
Binary files a/frontend/public/assets/3849cf16cb30e6.png and /dev/null differ
diff --git a/frontend/public/assets/3849d2618c96f4.png b/frontend/public/assets/3849d2618c96f4.png
deleted file mode 100644
index a4c8c83..0000000
Binary files a/frontend/public/assets/3849d2618c96f4.png and /dev/null differ
diff --git a/frontend/public/assets/3849d5fb11f63e.png b/frontend/public/assets/3849d5fb11f63e.png
deleted file mode 100644
index 1c9f5d6..0000000
Binary files a/frontend/public/assets/3849d5fb11f63e.png and /dev/null differ
diff --git a/frontend/public/assets/3849dcf5b9d56c.png b/frontend/public/assets/3849dcf5b9d56c.png
deleted file mode 100644
index 054bf04..0000000
Binary files a/frontend/public/assets/3849dcf5b9d56c.png and /dev/null differ
diff --git a/frontend/public/assets/384a4a95f1966e.jpg b/frontend/public/assets/384a4a95f1966e.jpg
deleted file mode 100644
index 8c8bca9..0000000
Binary files a/frontend/public/assets/384a4a95f1966e.jpg and /dev/null differ
diff --git a/frontend/public/assets/384a63398c6dae.png b/frontend/public/assets/384a63398c6dae.png
deleted file mode 100644
index 3ba50a8..0000000
Binary files a/frontend/public/assets/384a63398c6dae.png and /dev/null differ
diff --git a/frontend/public/assets/384a66bbfd5350.png b/frontend/public/assets/384a66bbfd5350.png
deleted file mode 100644
index 1ede580..0000000
Binary files a/frontend/public/assets/384a66bbfd5350.png and /dev/null differ
diff --git a/frontend/public/assets/384a6a886eb8f8.png b/frontend/public/assets/384a6a886eb8f8.png
deleted file mode 100644
index c08e52a..0000000
Binary files a/frontend/public/assets/384a6a886eb8f8.png and /dev/null differ
diff --git a/frontend/public/assets/384a70bedd4046.jpg b/frontend/public/assets/384a70bedd4046.jpg
deleted file mode 100644
index 13392ad..0000000
Binary files a/frontend/public/assets/384a70bedd4046.jpg and /dev/null differ
diff --git a/frontend/public/assets/384a7430b52a60.jpg b/frontend/public/assets/384a7430b52a60.jpg
deleted file mode 100644
index 8155886..0000000
Binary files a/frontend/public/assets/384a7430b52a60.jpg and /dev/null differ
diff --git a/frontend/public/assets/384a78c2968a30.jpg b/frontend/public/assets/384a78c2968a30.jpg
deleted file mode 100644
index c92bb69..0000000
Binary files a/frontend/public/assets/384a78c2968a30.jpg and /dev/null differ
diff --git a/frontend/public/assets/384a7bdf3948a8.jpg b/frontend/public/assets/384a7bdf3948a8.jpg
deleted file mode 100644
index b5e9a47..0000000
Binary files a/frontend/public/assets/384a7bdf3948a8.jpg and /dev/null differ
diff --git a/frontend/public/assets/384a9c9dfd98ba.png b/frontend/public/assets/384a9c9dfd98ba.png
deleted file mode 100644
index 5125124..0000000
Binary files a/frontend/public/assets/384a9c9dfd98ba.png and /dev/null differ
diff --git a/frontend/public/assets/384aba89e5db24.png b/frontend/public/assets/384aba89e5db24.png
deleted file mode 100644
index 07753f1..0000000
Binary files a/frontend/public/assets/384aba89e5db24.png and /dev/null differ
diff --git a/frontend/public/assets/384b7d623f35b8.jpg b/frontend/public/assets/384b7d623f35b8.jpg
deleted file mode 100644
index a09694c..0000000
Binary files a/frontend/public/assets/384b7d623f35b8.jpg and /dev/null differ
diff --git a/frontend/public/assets/384b80b0d12a10.jpg b/frontend/public/assets/384b80b0d12a10.jpg
deleted file mode 100644
index 075790c..0000000
Binary files a/frontend/public/assets/384b80b0d12a10.jpg and /dev/null differ
diff --git a/frontend/public/assets/384bd223bf2474.png b/frontend/public/assets/384bd223bf2474.png
deleted file mode 100644
index 602655c..0000000
Binary files a/frontend/public/assets/384bd223bf2474.png and /dev/null differ
diff --git a/frontend/public/assets/384bd6dbcfdb06.png b/frontend/public/assets/384bd6dbcfdb06.png
deleted file mode 100644
index 74e266c..0000000
Binary files a/frontend/public/assets/384bd6dbcfdb06.png and /dev/null differ
diff --git a/frontend/public/assets/384bda78ff38de.png b/frontend/public/assets/384bda78ff38de.png
deleted file mode 100644
index 1c8ebe6..0000000
Binary files a/frontend/public/assets/384bda78ff38de.png and /dev/null differ
diff --git a/frontend/public/assets/384bddc11c9322.png b/frontend/public/assets/384bddc11c9322.png
deleted file mode 100644
index 2d69856..0000000
Binary files a/frontend/public/assets/384bddc11c9322.png and /dev/null differ
diff --git a/frontend/public/assets/384be1dcccbe36.png b/frontend/public/assets/384be1dcccbe36.png
deleted file mode 100644
index 4125147..0000000
Binary files a/frontend/public/assets/384be1dcccbe36.png and /dev/null differ
diff --git a/frontend/public/assets/384bea5a2e8e5c.png b/frontend/public/assets/384bea5a2e8e5c.png
deleted file mode 100644
index 3bb23d3..0000000
Binary files a/frontend/public/assets/384bea5a2e8e5c.png and /dev/null differ
diff --git a/frontend/public/assets/384bf2c3f4a1be.jpg b/frontend/public/assets/384bf2c3f4a1be.jpg
deleted file mode 100644
index 5311fa6..0000000
Binary files a/frontend/public/assets/384bf2c3f4a1be.jpg and /dev/null differ
diff --git a/frontend/public/assets/384bff73b7cc26.png b/frontend/public/assets/384bff73b7cc26.png
deleted file mode 100644
index b919d31..0000000
Binary files a/frontend/public/assets/384bff73b7cc26.png and /dev/null differ
diff --git a/frontend/public/assets/384c04777cb0bc.png b/frontend/public/assets/384c04777cb0bc.png
deleted file mode 100644
index bc688f9..0000000
Binary files a/frontend/public/assets/384c04777cb0bc.png and /dev/null differ
diff --git a/frontend/public/assets/384c08918414c2.png b/frontend/public/assets/384c08918414c2.png
deleted file mode 100644
index e1b1f42..0000000
Binary files a/frontend/public/assets/384c08918414c2.png and /dev/null differ
diff --git a/frontend/public/assets/384c0b7a88b58c.png b/frontend/public/assets/384c0b7a88b58c.png
deleted file mode 100644
index 592eb6a..0000000
Binary files a/frontend/public/assets/384c0b7a88b58c.png and /dev/null differ
diff --git a/frontend/public/assets/384c0f8e7f93ba.png b/frontend/public/assets/384c0f8e7f93ba.png
deleted file mode 100644
index 9d3fe26..0000000
Binary files a/frontend/public/assets/384c0f8e7f93ba.png and /dev/null differ
diff --git a/frontend/public/assets/384c1373cc73e4.png b/frontend/public/assets/384c1373cc73e4.png
deleted file mode 100644
index d7e740f..0000000
Binary files a/frontend/public/assets/384c1373cc73e4.png and /dev/null differ
diff --git a/frontend/public/assets/384c1af72b1a50.jpg b/frontend/public/assets/384c1af72b1a50.jpg
deleted file mode 100644
index 984c016..0000000
Binary files a/frontend/public/assets/384c1af72b1a50.jpg and /dev/null differ
diff --git a/frontend/public/assets/384c34a8698c1c.gif b/frontend/public/assets/384c34a8698c1c.gif
deleted file mode 100644
index aee9e36..0000000
Binary files a/frontend/public/assets/384c34a8698c1c.gif and /dev/null differ
diff --git a/frontend/public/assets/384c3801d272cc.gif b/frontend/public/assets/384c3801d272cc.gif
deleted file mode 100644
index c5057cc..0000000
Binary files a/frontend/public/assets/384c3801d272cc.gif and /dev/null differ
diff --git a/frontend/public/assets/384db0c974ad5e.png b/frontend/public/assets/384db0c974ad5e.png
deleted file mode 100644
index 153bbd0..0000000
Binary files a/frontend/public/assets/384db0c974ad5e.png and /dev/null differ
diff --git a/frontend/public/assets/384dbe3c9e68b4.png b/frontend/public/assets/384dbe3c9e68b4.png
deleted file mode 100644
index 31dc885..0000000
Binary files a/frontend/public/assets/384dbe3c9e68b4.png and /dev/null differ
diff --git a/frontend/public/assets/384e02eb00f588.png b/frontend/public/assets/384e02eb00f588.png
deleted file mode 100644
index c028ee5..0000000
Binary files a/frontend/public/assets/384e02eb00f588.png and /dev/null differ
diff --git a/frontend/public/assets/384e2eb0d52ed2.jpg b/frontend/public/assets/384e2eb0d52ed2.jpg
deleted file mode 100644
index e73445b..0000000
Binary files a/frontend/public/assets/384e2eb0d52ed2.jpg and /dev/null differ
diff --git a/frontend/public/assets/384ec915fb5f10.jpg b/frontend/public/assets/384ec915fb5f10.jpg
deleted file mode 100644
index 3febabb..0000000
Binary files a/frontend/public/assets/384ec915fb5f10.jpg and /dev/null differ
diff --git a/frontend/public/assets/384ed4f267c8ae.png b/frontend/public/assets/384ed4f267c8ae.png
deleted file mode 100644
index 78d7e32..0000000
Binary files a/frontend/public/assets/384ed4f267c8ae.png and /dev/null differ
diff --git a/frontend/public/assets/384edc4f848caa.jpg b/frontend/public/assets/384edc4f848caa.jpg
deleted file mode 100644
index ce815a9..0000000
Binary files a/frontend/public/assets/384edc4f848caa.jpg and /dev/null differ
diff --git a/frontend/public/assets/384ee653e872fe.png b/frontend/public/assets/384ee653e872fe.png
deleted file mode 100644
index e8b1160..0000000
Binary files a/frontend/public/assets/384ee653e872fe.png and /dev/null differ
diff --git a/frontend/public/assets/384ee99db9272c.jpg b/frontend/public/assets/384ee99db9272c.jpg
deleted file mode 100644
index 5be53dc..0000000
Binary files a/frontend/public/assets/384ee99db9272c.jpg and /dev/null differ
diff --git a/frontend/public/assets/384eeee5a9e8ac.png b/frontend/public/assets/384eeee5a9e8ac.png
deleted file mode 100644
index e312d19..0000000
Binary files a/frontend/public/assets/384eeee5a9e8ac.png and /dev/null differ
diff --git a/frontend/public/assets/384f0f1b75cc64.jpg b/frontend/public/assets/384f0f1b75cc64.jpg
deleted file mode 100644
index cf5c0b8..0000000
Binary files a/frontend/public/assets/384f0f1b75cc64.jpg and /dev/null differ
diff --git a/frontend/public/assets/384f1fd40d350a.png b/frontend/public/assets/384f1fd40d350a.png
deleted file mode 100644
index 856944e..0000000
Binary files a/frontend/public/assets/384f1fd40d350a.png and /dev/null differ
diff --git a/frontend/public/assets/384f2e913fea24.jpg b/frontend/public/assets/384f2e913fea24.jpg
deleted file mode 100644
index 49882a2..0000000
Binary files a/frontend/public/assets/384f2e913fea24.jpg and /dev/null differ
diff --git a/frontend/public/assets/38501464ee77a6.jpg b/frontend/public/assets/38501464ee77a6.jpg
deleted file mode 100644
index d7cf908..0000000
Binary files a/frontend/public/assets/38501464ee77a6.jpg and /dev/null differ
diff --git a/frontend/public/assets/38501f99dabdce.jpg b/frontend/public/assets/38501f99dabdce.jpg
deleted file mode 100644
index fd35cc1..0000000
Binary files a/frontend/public/assets/38501f99dabdce.jpg and /dev/null differ
diff --git a/frontend/public/assets/38502389a811c4.png b/frontend/public/assets/38502389a811c4.png
deleted file mode 100644
index 83854ee..0000000
Binary files a/frontend/public/assets/38502389a811c4.png and /dev/null differ
diff --git a/frontend/public/assets/3850323b3354d6.png b/frontend/public/assets/3850323b3354d6.png
deleted file mode 100644
index 45c9069..0000000
Binary files a/frontend/public/assets/3850323b3354d6.png and /dev/null differ
diff --git a/frontend/public/assets/38503ff8192cd4.png b/frontend/public/assets/38503ff8192cd4.png
deleted file mode 100644
index 88c6016..0000000
Binary files a/frontend/public/assets/38503ff8192cd4.png and /dev/null differ
diff --git a/frontend/public/assets/38504401d39ec2.png b/frontend/public/assets/38504401d39ec2.png
deleted file mode 100644
index b406c71..0000000
Binary files a/frontend/public/assets/38504401d39ec2.png and /dev/null differ
diff --git a/frontend/public/assets/38509e1fc53f60.jpg b/frontend/public/assets/38509e1fc53f60.jpg
deleted file mode 100644
index 8d8064b..0000000
Binary files a/frontend/public/assets/38509e1fc53f60.jpg and /dev/null differ
diff --git a/frontend/public/assets/3850c02e11f8d6.png b/frontend/public/assets/3850c02e11f8d6.png
deleted file mode 100644
index f4642bc..0000000
Binary files a/frontend/public/assets/3850c02e11f8d6.png and /dev/null differ
diff --git a/frontend/public/assets/3850c7c44aa1f4.png b/frontend/public/assets/3850c7c44aa1f4.png
deleted file mode 100644
index 3a7e8f7..0000000
Binary files a/frontend/public/assets/3850c7c44aa1f4.png and /dev/null differ
diff --git a/frontend/public/assets/3850cdf34d4444.jpg b/frontend/public/assets/3850cdf34d4444.jpg
deleted file mode 100644
index d65bcbb..0000000
Binary files a/frontend/public/assets/3850cdf34d4444.jpg and /dev/null differ
diff --git a/frontend/public/assets/3850d191f72904.gif b/frontend/public/assets/3850d191f72904.gif
deleted file mode 100644
index a44e3cc..0000000
Binary files a/frontend/public/assets/3850d191f72904.gif and /dev/null differ
diff --git a/frontend/public/assets/3850eb835d2cc6.png b/frontend/public/assets/3850eb835d2cc6.png
deleted file mode 100644
index 21144f4..0000000
Binary files a/frontend/public/assets/3850eb835d2cc6.png and /dev/null differ
diff --git a/frontend/public/assets/385110843bdd76.png b/frontend/public/assets/385110843bdd76.png
deleted file mode 100644
index 419a507..0000000
Binary files a/frontend/public/assets/385110843bdd76.png and /dev/null differ
diff --git a/frontend/public/assets/3851159c3edc16.png b/frontend/public/assets/3851159c3edc16.png
deleted file mode 100644
index 06a7d5b..0000000
Binary files a/frontend/public/assets/3851159c3edc16.png and /dev/null differ
diff --git a/frontend/public/assets/385176d258c980.png b/frontend/public/assets/385176d258c980.png
deleted file mode 100644
index ae77635..0000000
Binary files a/frontend/public/assets/385176d258c980.png and /dev/null differ
diff --git a/frontend/public/assets/385179c46ae0c6.png b/frontend/public/assets/385179c46ae0c6.png
deleted file mode 100644
index 39abec4..0000000
Binary files a/frontend/public/assets/385179c46ae0c6.png and /dev/null differ
diff --git a/frontend/public/assets/38517cf2729a20.png b/frontend/public/assets/38517cf2729a20.png
deleted file mode 100644
index dd78062..0000000
Binary files a/frontend/public/assets/38517cf2729a20.png and /dev/null differ
diff --git a/frontend/public/assets/3851a8bfeefc26.png b/frontend/public/assets/3851a8bfeefc26.png
deleted file mode 100644
index 08fef12..0000000
Binary files a/frontend/public/assets/3851a8bfeefc26.png and /dev/null differ
diff --git a/frontend/public/assets/3851ac722f3720.png b/frontend/public/assets/3851ac722f3720.png
deleted file mode 100644
index e4262c7..0000000
Binary files a/frontend/public/assets/3851ac722f3720.png and /dev/null differ
diff --git a/frontend/public/assets/3851fc00eec516.png b/frontend/public/assets/3851fc00eec516.png
deleted file mode 100644
index 7ab3a9c..0000000
Binary files a/frontend/public/assets/3851fc00eec516.png and /dev/null differ
diff --git a/frontend/public/assets/38521095ba1162.png b/frontend/public/assets/38521095ba1162.png
deleted file mode 100644
index f8aa6c3..0000000
Binary files a/frontend/public/assets/38521095ba1162.png and /dev/null differ
diff --git a/frontend/public/assets/387f78e434c204.png b/frontend/public/assets/387f78e434c204.png
deleted file mode 100644
index 4767b65..0000000
Binary files a/frontend/public/assets/387f78e434c204.png and /dev/null differ
diff --git a/frontend/public/assets/38a3ad252efdba.png b/frontend/public/assets/38a3ad252efdba.png
deleted file mode 100644
index a2c7f7a..0000000
Binary files a/frontend/public/assets/38a3ad252efdba.png and /dev/null differ
diff --git a/frontend/public/assets/38e182ead36c54.gif b/frontend/public/assets/38e182ead36c54.gif
deleted file mode 100644
index c6be8c7..0000000
Binary files a/frontend/public/assets/38e182ead36c54.gif and /dev/null differ
diff --git a/frontend/public/assets/38e30d18-5165-412a-b5c0-35c0bd9ce5cf.jpg b/frontend/public/assets/38e30d18-5165-412a-b5c0-35c0bd9ce5cf.jpg
deleted file mode 100644
index 7a7570b..0000000
Binary files a/frontend/public/assets/38e30d18-5165-412a-b5c0-35c0bd9ce5cf.jpg and /dev/null differ
diff --git a/frontend/public/assets/38e30d18-5165-412a-b5c0-35c0bd9ce5cf.jpg_366xaf.jpg b/frontend/public/assets/38e30d18-5165-412a-b5c0-35c0bd9ce5cf.jpg_366xaf.jpg
deleted file mode 100644
index f5715d0..0000000
Binary files a/frontend/public/assets/38e30d18-5165-412a-b5c0-35c0bd9ce5cf.jpg_366xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/3a1da198b7acb.png b/frontend/public/assets/3a1da198b7acb.png
deleted file mode 100644
index 695ef7e..0000000
Binary files a/frontend/public/assets/3a1da198b7acb.png and /dev/null differ
diff --git a/frontend/public/assets/3b564550a3d2e8.jpg b/frontend/public/assets/3b564550a3d2e8.jpg
deleted file mode 100644
index 436980c..0000000
Binary files a/frontend/public/assets/3b564550a3d2e8.jpg and /dev/null differ
diff --git a/frontend/public/assets/3bde4a08-7d56-4141-b95e-c18eaedcea58.jpg b/frontend/public/assets/3bde4a08-7d56-4141-b95e-c18eaedcea58.jpg
deleted file mode 100644
index 10c04e9..0000000
Binary files a/frontend/public/assets/3bde4a08-7d56-4141-b95e-c18eaedcea58.jpg and /dev/null differ
diff --git a/frontend/public/assets/3c7f4801076954.jpg b/frontend/public/assets/3c7f4801076954.jpg
deleted file mode 100644
index 5e81b5e..0000000
Binary files a/frontend/public/assets/3c7f4801076954.jpg and /dev/null differ
diff --git a/frontend/public/assets/3c7f5212641098.png b/frontend/public/assets/3c7f5212641098.png
deleted file mode 100644
index d7b7111..0000000
Binary files a/frontend/public/assets/3c7f5212641098.png and /dev/null differ
diff --git a/frontend/public/assets/43839dea-7aa4-40db-84ae-7def7861bee3.jpg b/frontend/public/assets/43839dea-7aa4-40db-84ae-7def7861bee3.jpg
deleted file mode 100644
index 6e06555..0000000
Binary files a/frontend/public/assets/43839dea-7aa4-40db-84ae-7def7861bee3.jpg and /dev/null differ
diff --git a/frontend/public/assets/43839dea-7aa4-40db-84ae-7def7861bee3.jpg_366xaf.jpg b/frontend/public/assets/43839dea-7aa4-40db-84ae-7def7861bee3.jpg_366xaf.jpg
deleted file mode 100644
index 530ad98..0000000
Binary files a/frontend/public/assets/43839dea-7aa4-40db-84ae-7def7861bee3.jpg_366xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/44e62545-099c-44e7-acca-9c16b613c45b.jpg b/frontend/public/assets/44e62545-099c-44e7-acca-9c16b613c45b.jpg
deleted file mode 100644
index d2be94b..0000000
Binary files a/frontend/public/assets/44e62545-099c-44e7-acca-9c16b613c45b.jpg and /dev/null differ
diff --git a/frontend/public/assets/49e1caec-d7bb-4f26-8393-7af05216ccc3.jpg b/frontend/public/assets/49e1caec-d7bb-4f26-8393-7af05216ccc3.jpg
deleted file mode 100644
index 1afa42b..0000000
Binary files a/frontend/public/assets/49e1caec-d7bb-4f26-8393-7af05216ccc3.jpg and /dev/null differ
diff --git a/frontend/public/assets/4a938ecd-1fc9-4fac-979c-3163001bb353.jpg b/frontend/public/assets/4a938ecd-1fc9-4fac-979c-3163001bb353.jpg
deleted file mode 100644
index 76673d5..0000000
Binary files a/frontend/public/assets/4a938ecd-1fc9-4fac-979c-3163001bb353.jpg and /dev/null differ
diff --git a/frontend/public/assets/4e75b52e-84f6-40fd-9ee7-29adf9fe711a-1.jpg b/frontend/public/assets/4e75b52e-84f6-40fd-9ee7-29adf9fe711a-1.jpg
deleted file mode 100644
index da31263..0000000
Binary files a/frontend/public/assets/4e75b52e-84f6-40fd-9ee7-29adf9fe711a-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/4e75b52e-84f6-40fd-9ee7-29adf9fe711a.jpg b/frontend/public/assets/4e75b52e-84f6-40fd-9ee7-29adf9fe711a.jpg
deleted file mode 100644
index da31263..0000000
Binary files a/frontend/public/assets/4e75b52e-84f6-40fd-9ee7-29adf9fe711a.jpg and /dev/null differ
diff --git a/frontend/public/assets/4ecf1b6f14f97.png b/frontend/public/assets/4ecf1b6f14f97.png
deleted file mode 100644
index 2c50371..0000000
Binary files a/frontend/public/assets/4ecf1b6f14f97.png and /dev/null differ
diff --git a/frontend/public/assets/4ecf496640f45.jpg b/frontend/public/assets/4ecf496640f45.jpg
deleted file mode 100644
index 959b608..0000000
Binary files a/frontend/public/assets/4ecf496640f45.jpg and /dev/null differ
diff --git a/frontend/public/assets/4ecf747b652bf.png b/frontend/public/assets/4ecf747b652bf.png
deleted file mode 100644
index d41eb66..0000000
Binary files a/frontend/public/assets/4ecf747b652bf.png and /dev/null differ
diff --git a/frontend/public/assets/4ed0222884c98.png b/frontend/public/assets/4ed0222884c98.png
deleted file mode 100644
index fc1e9d8..0000000
Binary files a/frontend/public/assets/4ed0222884c98.png and /dev/null differ
diff --git a/frontend/public/assets/4f416585-7f94-44d3-ab64-76ca321ef090.webp_366xaf.webp b/frontend/public/assets/4f416585-7f94-44d3-ab64-76ca321ef090.webp_366xaf.webp
deleted file mode 100644
index f2e9678..0000000
Binary files a/frontend/public/assets/4f416585-7f94-44d3-ab64-76ca321ef090.webp_366xaf.webp and /dev/null differ
diff --git a/frontend/public/assets/534b8742-1e7e-434e-8372-291b6c9416a8.jpg_1180xaf.jpg b/frontend/public/assets/534b8742-1e7e-434e-8372-291b6c9416a8.jpg_1180xaf.jpg
deleted file mode 100644
index fac3106..0000000
Binary files a/frontend/public/assets/534b8742-1e7e-434e-8372-291b6c9416a8.jpg_1180xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/5448b231-b126-4ec9-b0a8-744b4195c90b.jpg b/frontend/public/assets/5448b231-b126-4ec9-b0a8-744b4195c90b.jpg
deleted file mode 100644
index aca3c0d..0000000
Binary files a/frontend/public/assets/5448b231-b126-4ec9-b0a8-744b4195c90b.jpg and /dev/null differ
diff --git a/frontend/public/assets/54a15566-c42f-46cd-b1e7-12f2b70511ce.png b/frontend/public/assets/54a15566-c42f-46cd-b1e7-12f2b70511ce.png
deleted file mode 100644
index 311d463..0000000
Binary files a/frontend/public/assets/54a15566-c42f-46cd-b1e7-12f2b70511ce.png and /dev/null differ
diff --git a/frontend/public/assets/552a2e8c-443a-4c63-b0ad-e0da4359cfb3.jpg b/frontend/public/assets/552a2e8c-443a-4c63-b0ad-e0da4359cfb3.jpg
deleted file mode 100644
index d7d0ca3..0000000
Binary files a/frontend/public/assets/552a2e8c-443a-4c63-b0ad-e0da4359cfb3.jpg and /dev/null differ
diff --git a/frontend/public/assets/55d5d2916224e4d023272d75283bc171.png b/frontend/public/assets/55d5d2916224e4d023272d75283bc171.png
deleted file mode 100644
index 5836809..0000000
Binary files a/frontend/public/assets/55d5d2916224e4d023272d75283bc171.png and /dev/null differ
diff --git a/frontend/public/assets/58bf0c6ffe1bab328b960718fd12496c.png b/frontend/public/assets/58bf0c6ffe1bab328b960718fd12496c.png
deleted file mode 100644
index 5a58888..0000000
Binary files a/frontend/public/assets/58bf0c6ffe1bab328b960718fd12496c.png and /dev/null differ
diff --git a/frontend/public/assets/5bccd520-b84a-4c51-8104-c53687e0dec9.png b/frontend/public/assets/5bccd520-b84a-4c51-8104-c53687e0dec9.png
deleted file mode 100644
index 5650d8d..0000000
Binary files a/frontend/public/assets/5bccd520-b84a-4c51-8104-c53687e0dec9.png and /dev/null differ
diff --git a/frontend/public/assets/5c4ec906-3f60-4df5-ad46-9de5fb0eb9c6.jpg b/frontend/public/assets/5c4ec906-3f60-4df5-ad46-9de5fb0eb9c6.jpg
deleted file mode 100644
index 9b3b03b..0000000
Binary files a/frontend/public/assets/5c4ec906-3f60-4df5-ad46-9de5fb0eb9c6.jpg and /dev/null differ
diff --git a/frontend/public/assets/5f09c3aed0c4a.gif b/frontend/public/assets/5f09c3aed0c4a.gif
deleted file mode 100644
index 78081b0..0000000
Binary files a/frontend/public/assets/5f09c3aed0c4a.gif and /dev/null differ
diff --git a/frontend/public/assets/605c9cdf-65b8-43e7-beb6-19832611f3e0.webp_366xaf.webp b/frontend/public/assets/605c9cdf-65b8-43e7-beb6-19832611f3e0.webp_366xaf.webp
deleted file mode 100644
index e0465b0..0000000
Binary files a/frontend/public/assets/605c9cdf-65b8-43e7-beb6-19832611f3e0.webp_366xaf.webp and /dev/null differ
diff --git a/frontend/public/assets/61857111-787b-4770-aa26-aecc22a48767-1.jpg b/frontend/public/assets/61857111-787b-4770-aa26-aecc22a48767-1.jpg
deleted file mode 100644
index 910bb78..0000000
Binary files a/frontend/public/assets/61857111-787b-4770-aa26-aecc22a48767-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/61857111-787b-4770-aa26-aecc22a48767.jpg b/frontend/public/assets/61857111-787b-4770-aa26-aecc22a48767.jpg
deleted file mode 100644
index 910bb78..0000000
Binary files a/frontend/public/assets/61857111-787b-4770-aa26-aecc22a48767.jpg and /dev/null differ
diff --git a/frontend/public/assets/61dd0b1a9e7f89703f46bbe99fc0e6fc.png b/frontend/public/assets/61dd0b1a9e7f89703f46bbe99fc0e6fc.png
deleted file mode 100644
index 3118fd1..0000000
Binary files a/frontend/public/assets/61dd0b1a9e7f89703f46bbe99fc0e6fc.png and /dev/null differ
diff --git a/frontend/public/assets/6269c800-efe5-4881-86bf-bd4f85db5788-1.png b/frontend/public/assets/6269c800-efe5-4881-86bf-bd4f85db5788-1.png
deleted file mode 100644
index 6199825..0000000
Binary files a/frontend/public/assets/6269c800-efe5-4881-86bf-bd4f85db5788-1.png and /dev/null differ
diff --git a/frontend/public/assets/6269c800-efe5-4881-86bf-bd4f85db5788.png b/frontend/public/assets/6269c800-efe5-4881-86bf-bd4f85db5788.png
deleted file mode 100644
index 6199825..0000000
Binary files a/frontend/public/assets/6269c800-efe5-4881-86bf-bd4f85db5788.png and /dev/null differ
diff --git a/frontend/public/assets/6343b360-38e8-4ea8-aed5-e90b25833654.jpg_1180xaf.jpg b/frontend/public/assets/6343b360-38e8-4ea8-aed5-e90b25833654.jpg_1180xaf.jpg
deleted file mode 100644
index 43f33fe..0000000
Binary files a/frontend/public/assets/6343b360-38e8-4ea8-aed5-e90b25833654.jpg_1180xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/66b32acb-94db-4683-b565-ed808a870795.png b/frontend/public/assets/66b32acb-94db-4683-b565-ed808a870795.png
deleted file mode 100644
index d6298f2..0000000
Binary files a/frontend/public/assets/66b32acb-94db-4683-b565-ed808a870795.png and /dev/null differ
diff --git a/frontend/public/assets/66ee1525-0134-4626-b019-3c55ddbd7c9c.jpg b/frontend/public/assets/66ee1525-0134-4626-b019-3c55ddbd7c9c.jpg
deleted file mode 100644
index 6dce2d3..0000000
Binary files a/frontend/public/assets/66ee1525-0134-4626-b019-3c55ddbd7c9c.jpg and /dev/null differ
diff --git a/frontend/public/assets/66ee1525-0134-4626-b019-3c55ddbd7c9c.jpg_366xaf.jpg b/frontend/public/assets/66ee1525-0134-4626-b019-3c55ddbd7c9c.jpg_366xaf.jpg
deleted file mode 100644
index 54efa25..0000000
Binary files a/frontend/public/assets/66ee1525-0134-4626-b019-3c55ddbd7c9c.jpg_366xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/67795448bf4d6.png b/frontend/public/assets/67795448bf4d6.png
deleted file mode 100644
index 9910ce2..0000000
Binary files a/frontend/public/assets/67795448bf4d6.png and /dev/null differ
diff --git a/frontend/public/assets/67a6c9ce22019.png b/frontend/public/assets/67a6c9ce22019.png
deleted file mode 100644
index 589e94c..0000000
Binary files a/frontend/public/assets/67a6c9ce22019.png and /dev/null differ
diff --git a/frontend/public/assets/689fd192-8c49-4027-a97c-27a763bd1401.jpg b/frontend/public/assets/689fd192-8c49-4027-a97c-27a763bd1401.jpg
deleted file mode 100644
index 6fc6c1c..0000000
Binary files a/frontend/public/assets/689fd192-8c49-4027-a97c-27a763bd1401.jpg and /dev/null differ
diff --git a/frontend/public/assets/69aab0d0-bc4c-4762-841d-71d1e54d7b97.jpg_560xaf.jpg b/frontend/public/assets/69aab0d0-bc4c-4762-841d-71d1e54d7b97.jpg_560xaf.jpg
deleted file mode 100644
index 04b03ac..0000000
Binary files a/frontend/public/assets/69aab0d0-bc4c-4762-841d-71d1e54d7b97.jpg_560xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/6ba65001-8238-4c58-9d0b-49b68393a78a.jpg b/frontend/public/assets/6ba65001-8238-4c58-9d0b-49b68393a78a.jpg
deleted file mode 100644
index efe44fa..0000000
Binary files a/frontend/public/assets/6ba65001-8238-4c58-9d0b-49b68393a78a.jpg and /dev/null differ
diff --git a/frontend/public/assets/6e5cb9a3-f670-4383-80a7-118b9b818da1.jpg b/frontend/public/assets/6e5cb9a3-f670-4383-80a7-118b9b818da1.jpg
deleted file mode 100644
index 93fb7dd..0000000
Binary files a/frontend/public/assets/6e5cb9a3-f670-4383-80a7-118b9b818da1.jpg and /dev/null differ
diff --git a/frontend/public/assets/7382d095-6cdc-42e3-9de1-e67583e15801.jpg_560xaf.jpg b/frontend/public/assets/7382d095-6cdc-42e3-9de1-e67583e15801.jpg_560xaf.jpg
deleted file mode 100644
index 59fb296..0000000
Binary files a/frontend/public/assets/7382d095-6cdc-42e3-9de1-e67583e15801.jpg_560xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/747dcf3e-f67d-4030-8d9e-9b7b035d14a8-1.jpg b/frontend/public/assets/747dcf3e-f67d-4030-8d9e-9b7b035d14a8-1.jpg
deleted file mode 100644
index c48cdf3..0000000
Binary files a/frontend/public/assets/747dcf3e-f67d-4030-8d9e-9b7b035d14a8-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/747dcf3e-f67d-4030-8d9e-9b7b035d14a8.jpg b/frontend/public/assets/747dcf3e-f67d-4030-8d9e-9b7b035d14a8.jpg
deleted file mode 100644
index c48cdf3..0000000
Binary files a/frontend/public/assets/747dcf3e-f67d-4030-8d9e-9b7b035d14a8.jpg and /dev/null differ
diff --git a/frontend/public/assets/74a88fc7512d1fc4042472a8998d658a.png b/frontend/public/assets/74a88fc7512d1fc4042472a8998d658a.png
deleted file mode 100644
index 124c500..0000000
Binary files a/frontend/public/assets/74a88fc7512d1fc4042472a8998d658a.png and /dev/null differ
diff --git a/frontend/public/assets/76bd053f-e42a-4557-b9fa-a5706a1d6725-1.jpg b/frontend/public/assets/76bd053f-e42a-4557-b9fa-a5706a1d6725-1.jpg
deleted file mode 100644
index 5e19850..0000000
Binary files a/frontend/public/assets/76bd053f-e42a-4557-b9fa-a5706a1d6725-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/76bd053f-e42a-4557-b9fa-a5706a1d6725-2.jpg b/frontend/public/assets/76bd053f-e42a-4557-b9fa-a5706a1d6725-2.jpg
deleted file mode 100644
index 5e19850..0000000
Binary files a/frontend/public/assets/76bd053f-e42a-4557-b9fa-a5706a1d6725-2.jpg and /dev/null differ
diff --git a/frontend/public/assets/76bd053f-e42a-4557-b9fa-a5706a1d6725.jpg b/frontend/public/assets/76bd053f-e42a-4557-b9fa-a5706a1d6725.jpg
deleted file mode 100644
index 5e19850..0000000
Binary files a/frontend/public/assets/76bd053f-e42a-4557-b9fa-a5706a1d6725.jpg and /dev/null differ
diff --git a/frontend/public/assets/77ab1dde-c7ea-417a-8322-ea7d27565238-1.jpg b/frontend/public/assets/77ab1dde-c7ea-417a-8322-ea7d27565238-1.jpg
deleted file mode 100644
index e81e294..0000000
Binary files a/frontend/public/assets/77ab1dde-c7ea-417a-8322-ea7d27565238-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/77ab1dde-c7ea-417a-8322-ea7d27565238.jpg b/frontend/public/assets/77ab1dde-c7ea-417a-8322-ea7d27565238.jpg
deleted file mode 100644
index e81e294..0000000
Binary files a/frontend/public/assets/77ab1dde-c7ea-417a-8322-ea7d27565238.jpg and /dev/null differ
diff --git a/frontend/public/assets/7970c4a5-f3a4-46fa-a544-fba3f1ba3761-1.png b/frontend/public/assets/7970c4a5-f3a4-46fa-a544-fba3f1ba3761-1.png
deleted file mode 100644
index b254a14..0000000
Binary files a/frontend/public/assets/7970c4a5-f3a4-46fa-a544-fba3f1ba3761-1.png and /dev/null differ
diff --git a/frontend/public/assets/7970c4a5-f3a4-46fa-a544-fba3f1ba3761.png b/frontend/public/assets/7970c4a5-f3a4-46fa-a544-fba3f1ba3761.png
deleted file mode 100644
index b254a14..0000000
Binary files a/frontend/public/assets/7970c4a5-f3a4-46fa-a544-fba3f1ba3761.png and /dev/null differ
diff --git a/frontend/public/assets/7a062633-43d7-4cf7-9d97-d491afb96f50-1.jpg b/frontend/public/assets/7a062633-43d7-4cf7-9d97-d491afb96f50-1.jpg
deleted file mode 100644
index 39ccb5b..0000000
Binary files a/frontend/public/assets/7a062633-43d7-4cf7-9d97-d491afb96f50-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/7a062633-43d7-4cf7-9d97-d491afb96f50-2.jpg b/frontend/public/assets/7a062633-43d7-4cf7-9d97-d491afb96f50-2.jpg
deleted file mode 100644
index 39ccb5b..0000000
Binary files a/frontend/public/assets/7a062633-43d7-4cf7-9d97-d491afb96f50-2.jpg and /dev/null differ
diff --git a/frontend/public/assets/7a062633-43d7-4cf7-9d97-d491afb96f50.jpg b/frontend/public/assets/7a062633-43d7-4cf7-9d97-d491afb96f50.jpg
deleted file mode 100644
index 39ccb5b..0000000
Binary files a/frontend/public/assets/7a062633-43d7-4cf7-9d97-d491afb96f50.jpg and /dev/null differ
diff --git a/frontend/public/assets/7b366505-d115-431d-87be-93799a396195.jpg b/frontend/public/assets/7b366505-d115-431d-87be-93799a396195.jpg
deleted file mode 100644
index 9e1b64f..0000000
Binary files a/frontend/public/assets/7b366505-d115-431d-87be-93799a396195.jpg and /dev/null differ
diff --git a/frontend/public/assets/7b5f09b9-a977-4c31-8f0e-56bdb7a2adff.jpg b/frontend/public/assets/7b5f09b9-a977-4c31-8f0e-56bdb7a2adff.jpg
deleted file mode 100644
index d05d44b..0000000
Binary files a/frontend/public/assets/7b5f09b9-a977-4c31-8f0e-56bdb7a2adff.jpg and /dev/null differ
diff --git a/frontend/public/assets/7c18ca32cecb9.jpg b/frontend/public/assets/7c18ca32cecb9.jpg
deleted file mode 100644
index ba54b53..0000000
Binary files a/frontend/public/assets/7c18ca32cecb9.jpg and /dev/null differ
diff --git a/frontend/public/assets/7c193f3085914.jpg b/frontend/public/assets/7c193f3085914.jpg
deleted file mode 100644
index 39be7e6..0000000
Binary files a/frontend/public/assets/7c193f3085914.jpg and /dev/null differ
diff --git a/frontend/public/assets/7c19acf052c37.jpg b/frontend/public/assets/7c19acf052c37.jpg
deleted file mode 100644
index 2ac4393..0000000
Binary files a/frontend/public/assets/7c19acf052c37.jpg and /dev/null differ
diff --git a/frontend/public/assets/7c5d1433-2c34-4164-b02c-58133c2ad3b7.jpg_366xaf.jpg b/frontend/public/assets/7c5d1433-2c34-4164-b02c-58133c2ad3b7.jpg_366xaf.jpg
deleted file mode 100644
index 3c4c52b..0000000
Binary files a/frontend/public/assets/7c5d1433-2c34-4164-b02c-58133c2ad3b7.jpg_366xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/7f451b5a-3459-4549-bb0c-69aa8a7a39ac.jpg b/frontend/public/assets/7f451b5a-3459-4549-bb0c-69aa8a7a39ac.jpg
deleted file mode 100644
index d14ff2f..0000000
Binary files a/frontend/public/assets/7f451b5a-3459-4549-bb0c-69aa8a7a39ac.jpg and /dev/null differ
diff --git a/frontend/public/assets/7fa6ec5f-5cd1-400c-869c-86356c812bb4.png b/frontend/public/assets/7fa6ec5f-5cd1-400c-869c-86356c812bb4.png
deleted file mode 100644
index 3d2b1fd..0000000
Binary files a/frontend/public/assets/7fa6ec5f-5cd1-400c-869c-86356c812bb4.png and /dev/null differ
diff --git a/frontend/public/assets/80d22e15-8cb2-4daf-a6b6-cd26f3c729ee-1.jpg b/frontend/public/assets/80d22e15-8cb2-4daf-a6b6-cd26f3c729ee-1.jpg
deleted file mode 100644
index c7d04f7..0000000
Binary files a/frontend/public/assets/80d22e15-8cb2-4daf-a6b6-cd26f3c729ee-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/80d22e15-8cb2-4daf-a6b6-cd26f3c729ee.jpg b/frontend/public/assets/80d22e15-8cb2-4daf-a6b6-cd26f3c729ee.jpg
deleted file mode 100644
index c7d04f7..0000000
Binary files a/frontend/public/assets/80d22e15-8cb2-4daf-a6b6-cd26f3c729ee.jpg and /dev/null differ
diff --git a/frontend/public/assets/8211d54e-29dc-458e-8283-f80e00b889c2-1.jpg b/frontend/public/assets/8211d54e-29dc-458e-8283-f80e00b889c2-1.jpg
deleted file mode 100644
index 124072a..0000000
Binary files a/frontend/public/assets/8211d54e-29dc-458e-8283-f80e00b889c2-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/8211d54e-29dc-458e-8283-f80e00b889c2.jpg b/frontend/public/assets/8211d54e-29dc-458e-8283-f80e00b889c2.jpg
deleted file mode 100644
index 124072a..0000000
Binary files a/frontend/public/assets/8211d54e-29dc-458e-8283-f80e00b889c2.jpg and /dev/null differ
diff --git a/frontend/public/assets/86b45b9a-c1ec-4b9d-8d16-50b71df3f87d-1.jpg b/frontend/public/assets/86b45b9a-c1ec-4b9d-8d16-50b71df3f87d-1.jpg
deleted file mode 100644
index 6ff36db..0000000
Binary files a/frontend/public/assets/86b45b9a-c1ec-4b9d-8d16-50b71df3f87d-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/86b45b9a-c1ec-4b9d-8d16-50b71df3f87d-2.jpg b/frontend/public/assets/86b45b9a-c1ec-4b9d-8d16-50b71df3f87d-2.jpg
deleted file mode 100644
index 6ff36db..0000000
Binary files a/frontend/public/assets/86b45b9a-c1ec-4b9d-8d16-50b71df3f87d-2.jpg and /dev/null differ
diff --git a/frontend/public/assets/86b45b9a-c1ec-4b9d-8d16-50b71df3f87d.jpg b/frontend/public/assets/86b45b9a-c1ec-4b9d-8d16-50b71df3f87d.jpg
deleted file mode 100644
index 6ff36db..0000000
Binary files a/frontend/public/assets/86b45b9a-c1ec-4b9d-8d16-50b71df3f87d.jpg and /dev/null differ
diff --git a/frontend/public/assets/8a6f289a-a389-4867-adaa-fd866f3fc173.png b/frontend/public/assets/8a6f289a-a389-4867-adaa-fd866f3fc173.png
deleted file mode 100644
index 841f85a..0000000
Binary files a/frontend/public/assets/8a6f289a-a389-4867-adaa-fd866f3fc173.png and /dev/null differ
diff --git a/frontend/public/assets/8a7c84a6-6354-47a3-b9c4-91b2a98fd35c.png_366xaf.png b/frontend/public/assets/8a7c84a6-6354-47a3-b9c4-91b2a98fd35c.png_366xaf.png
deleted file mode 100644
index ac48a2d..0000000
Binary files a/frontend/public/assets/8a7c84a6-6354-47a3-b9c4-91b2a98fd35c.png_366xaf.png and /dev/null differ
diff --git a/frontend/public/assets/8b1b7a01-eb39-4d6f-9fc3-1ce455b22e65.png_366xaf.png b/frontend/public/assets/8b1b7a01-eb39-4d6f-9fc3-1ce455b22e65.png_366xaf.png
deleted file mode 100644
index f400835..0000000
Binary files a/frontend/public/assets/8b1b7a01-eb39-4d6f-9fc3-1ce455b22e65.png_366xaf.png and /dev/null differ
diff --git a/frontend/public/assets/990a73b8-b155-4497-bd14-bb4471955bb2.jpg b/frontend/public/assets/990a73b8-b155-4497-bd14-bb4471955bb2.jpg
deleted file mode 100644
index 749098b..0000000
Binary files a/frontend/public/assets/990a73b8-b155-4497-bd14-bb4471955bb2.jpg and /dev/null differ
diff --git a/frontend/public/assets/99fdf5cd-51c1-4ede-80f5-87eaf139945c.jpg_560xaf.jpg b/frontend/public/assets/99fdf5cd-51c1-4ede-80f5-87eaf139945c.jpg_560xaf.jpg
deleted file mode 100644
index 394bda3..0000000
Binary files a/frontend/public/assets/99fdf5cd-51c1-4ede-80f5-87eaf139945c.jpg_560xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/9ad9d866-0255-4fb0-a290-48f31a1b9f86.jpg b/frontend/public/assets/9ad9d866-0255-4fb0-a290-48f31a1b9f86.jpg
deleted file mode 100644
index 6d87e5a..0000000
Binary files a/frontend/public/assets/9ad9d866-0255-4fb0-a290-48f31a1b9f86.jpg and /dev/null differ
diff --git a/frontend/public/assets/9e5027ad9e0c.gif b/frontend/public/assets/9e5027ad9e0c.gif
deleted file mode 100644
index 2b59615..0000000
Binary files a/frontend/public/assets/9e5027ad9e0c.gif and /dev/null differ
diff --git a/frontend/public/assets/T12pdtXaldXXXXXXXX-2-2.png b/frontend/public/assets/T12pdtXaldXXXXXXXX-2-2.png
deleted file mode 100644
index 5af0c91..0000000
Binary files a/frontend/public/assets/T12pdtXaldXXXXXXXX-2-2.png and /dev/null differ
diff --git a/frontend/public/assets/a18bd917-c7b1-4311-81e1-a7d6fb9ee88c.jpg b/frontend/public/assets/a18bd917-c7b1-4311-81e1-a7d6fb9ee88c.jpg
deleted file mode 100644
index a7ee0b6..0000000
Binary files a/frontend/public/assets/a18bd917-c7b1-4311-81e1-a7d6fb9ee88c.jpg and /dev/null differ
diff --git a/frontend/public/assets/a18bd917-c7b1-4311-81e1-a7d6fb9ee88c.jpg_366xaf.jpg b/frontend/public/assets/a18bd917-c7b1-4311-81e1-a7d6fb9ee88c.jpg_366xaf.jpg
deleted file mode 100644
index eea0cfb..0000000
Binary files a/frontend/public/assets/a18bd917-c7b1-4311-81e1-a7d6fb9ee88c.jpg_366xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/a4761f27bd3a1aa32740e1da2445de46.png b/frontend/public/assets/a4761f27bd3a1aa32740e1da2445de46.png
deleted file mode 100644
index 089dab8..0000000
Binary files a/frontend/public/assets/a4761f27bd3a1aa32740e1da2445de46.png and /dev/null differ
diff --git a/frontend/public/assets/a818cf2c-dbec-410c-8b9d-e3f95c5ca4aa-1.png b/frontend/public/assets/a818cf2c-dbec-410c-8b9d-e3f95c5ca4aa-1.png
deleted file mode 100644
index fc3c19a..0000000
Binary files a/frontend/public/assets/a818cf2c-dbec-410c-8b9d-e3f95c5ca4aa-1.png and /dev/null differ
diff --git a/frontend/public/assets/a818cf2c-dbec-410c-8b9d-e3f95c5ca4aa.png b/frontend/public/assets/a818cf2c-dbec-410c-8b9d-e3f95c5ca4aa.png
deleted file mode 100644
index fc3c19a..0000000
Binary files a/frontend/public/assets/a818cf2c-dbec-410c-8b9d-e3f95c5ca4aa.png and /dev/null differ
diff --git a/frontend/public/assets/aabfb128-5aab-4e44-87ec-7a9c4951849f-1.jpg b/frontend/public/assets/aabfb128-5aab-4e44-87ec-7a9c4951849f-1.jpg
deleted file mode 100644
index 33fa66a..0000000
Binary files a/frontend/public/assets/aabfb128-5aab-4e44-87ec-7a9c4951849f-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/aabfb128-5aab-4e44-87ec-7a9c4951849f.jpg b/frontend/public/assets/aabfb128-5aab-4e44-87ec-7a9c4951849f.jpg
deleted file mode 100644
index 33fa66a..0000000
Binary files a/frontend/public/assets/aabfb128-5aab-4e44-87ec-7a9c4951849f.jpg and /dev/null differ
diff --git a/frontend/public/assets/b00aa34c-877b-47bd-8409-a17a4b0dad53-1.jpg b/frontend/public/assets/b00aa34c-877b-47bd-8409-a17a4b0dad53-1.jpg
deleted file mode 100644
index 782febf..0000000
Binary files a/frontend/public/assets/b00aa34c-877b-47bd-8409-a17a4b0dad53-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/b00aa34c-877b-47bd-8409-a17a4b0dad53.jpg b/frontend/public/assets/b00aa34c-877b-47bd-8409-a17a4b0dad53.jpg
deleted file mode 100644
index 782febf..0000000
Binary files a/frontend/public/assets/b00aa34c-877b-47bd-8409-a17a4b0dad53.jpg and /dev/null differ
diff --git a/frontend/public/assets/b0913a9e-23c5-44fc-83ac-291a969cb47b.png b/frontend/public/assets/b0913a9e-23c5-44fc-83ac-291a969cb47b.png
deleted file mode 100644
index 7e74798..0000000
Binary files a/frontend/public/assets/b0913a9e-23c5-44fc-83ac-291a969cb47b.png and /dev/null differ
diff --git a/frontend/public/assets/b12ef1da-4a3d-45d5-993d-243d8de87489.jpg b/frontend/public/assets/b12ef1da-4a3d-45d5-993d-243d8de87489.jpg
deleted file mode 100644
index f92a757..0000000
Binary files a/frontend/public/assets/b12ef1da-4a3d-45d5-993d-243d8de87489.jpg and /dev/null differ
diff --git a/frontend/public/assets/b21f562e-38af-4769-b7ef-b229911687db.jpg_1920xaf.jpg b/frontend/public/assets/b21f562e-38af-4769-b7ef-b229911687db.jpg_1920xaf.jpg
deleted file mode 100644
index 350313d..0000000
Binary files a/frontend/public/assets/b21f562e-38af-4769-b7ef-b229911687db.jpg_1920xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/b475b81f-4fc2-4a2f-83c0-f9f53bbbd9ff.jpg b/frontend/public/assets/b475b81f-4fc2-4a2f-83c0-f9f53bbbd9ff.jpg
deleted file mode 100644
index ea23e3c..0000000
Binary files a/frontend/public/assets/b475b81f-4fc2-4a2f-83c0-f9f53bbbd9ff.jpg and /dev/null differ
diff --git a/frontend/public/assets/b49079b6-9efd-4dd9-84bf-90d90bbdd285-1.png b/frontend/public/assets/b49079b6-9efd-4dd9-84bf-90d90bbdd285-1.png
deleted file mode 100644
index b733273..0000000
Binary files a/frontend/public/assets/b49079b6-9efd-4dd9-84bf-90d90bbdd285-1.png and /dev/null differ
diff --git a/frontend/public/assets/b49079b6-9efd-4dd9-84bf-90d90bbdd285.png b/frontend/public/assets/b49079b6-9efd-4dd9-84bf-90d90bbdd285.png
deleted file mode 100644
index b733273..0000000
Binary files a/frontend/public/assets/b49079b6-9efd-4dd9-84bf-90d90bbdd285.png and /dev/null differ
diff --git a/frontend/public/assets/b5d04e81-ee41-45f1-baca-07395793311b.jpg b/frontend/public/assets/b5d04e81-ee41-45f1-baca-07395793311b.jpg
deleted file mode 100644
index b3b8173..0000000
Binary files a/frontend/public/assets/b5d04e81-ee41-45f1-baca-07395793311b.jpg and /dev/null differ
diff --git a/frontend/public/assets/b5d1469c-e180-4082-bd49-f1908c4fcd70.png b/frontend/public/assets/b5d1469c-e180-4082-bd49-f1908c4fcd70.png
deleted file mode 100644
index b254a14..0000000
Binary files a/frontend/public/assets/b5d1469c-e180-4082-bd49-f1908c4fcd70.png and /dev/null differ
diff --git a/frontend/public/assets/b8da87b2-ba5e-4c62-a107-282db33b54e5-1.jpg b/frontend/public/assets/b8da87b2-ba5e-4c62-a107-282db33b54e5-1.jpg
deleted file mode 100644
index c36441d..0000000
Binary files a/frontend/public/assets/b8da87b2-ba5e-4c62-a107-282db33b54e5-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/b8da87b2-ba5e-4c62-a107-282db33b54e5.jpg b/frontend/public/assets/b8da87b2-ba5e-4c62-a107-282db33b54e5.jpg
deleted file mode 100644
index c36441d..0000000
Binary files a/frontend/public/assets/b8da87b2-ba5e-4c62-a107-282db33b54e5.jpg and /dev/null differ
diff --git a/frontend/public/assets/b9162071f6a.jpg b/frontend/public/assets/b9162071f6a.jpg
deleted file mode 100644
index ef90437..0000000
Binary files a/frontend/public/assets/b9162071f6a.jpg and /dev/null differ
diff --git a/frontend/public/assets/bc28574d-ac68-40be-a19e-42fff2768649-1.jpg b/frontend/public/assets/bc28574d-ac68-40be-a19e-42fff2768649-1.jpg
deleted file mode 100644
index 6409bcf..0000000
Binary files a/frontend/public/assets/bc28574d-ac68-40be-a19e-42fff2768649-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/bc28574d-ac68-40be-a19e-42fff2768649.jpg b/frontend/public/assets/bc28574d-ac68-40be-a19e-42fff2768649.jpg
deleted file mode 100644
index 6409bcf..0000000
Binary files a/frontend/public/assets/bc28574d-ac68-40be-a19e-42fff2768649.jpg and /dev/null differ
diff --git a/frontend/public/assets/c14cef90-1f87-4253-affb-239be3807d23.jpg b/frontend/public/assets/c14cef90-1f87-4253-affb-239be3807d23.jpg
deleted file mode 100644
index f8d4d3d..0000000
Binary files a/frontend/public/assets/c14cef90-1f87-4253-affb-239be3807d23.jpg and /dev/null differ
diff --git a/frontend/public/assets/c4053b9f-24b2-432e-a166-e075a0e4afc9.jpg_1180xaf.jpg b/frontend/public/assets/c4053b9f-24b2-432e-a166-e075a0e4afc9.jpg_1180xaf.jpg
deleted file mode 100644
index 602d0e4..0000000
Binary files a/frontend/public/assets/c4053b9f-24b2-432e-a166-e075a0e4afc9.jpg_1180xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/c80853e1-1903-4e17-b865-ee9396eecc4d.jpg b/frontend/public/assets/c80853e1-1903-4e17-b865-ee9396eecc4d.jpg
deleted file mode 100644
index 264a3ed..0000000
Binary files a/frontend/public/assets/c80853e1-1903-4e17-b865-ee9396eecc4d.jpg and /dev/null differ
diff --git a/frontend/public/assets/c8fdaa92-cc60-43bd-ae81-dde0780d8b55-1.jpg b/frontend/public/assets/c8fdaa92-cc60-43bd-ae81-dde0780d8b55-1.jpg
deleted file mode 100644
index 53da7d3..0000000
Binary files a/frontend/public/assets/c8fdaa92-cc60-43bd-ae81-dde0780d8b55-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/c8fdaa92-cc60-43bd-ae81-dde0780d8b55-2.jpg b/frontend/public/assets/c8fdaa92-cc60-43bd-ae81-dde0780d8b55-2.jpg
deleted file mode 100644
index 53da7d3..0000000
Binary files a/frontend/public/assets/c8fdaa92-cc60-43bd-ae81-dde0780d8b55-2.jpg and /dev/null differ
diff --git a/frontend/public/assets/c8fdaa92-cc60-43bd-ae81-dde0780d8b55.jpg b/frontend/public/assets/c8fdaa92-cc60-43bd-ae81-dde0780d8b55.jpg
deleted file mode 100644
index 53da7d3..0000000
Binary files a/frontend/public/assets/c8fdaa92-cc60-43bd-ae81-dde0780d8b55.jpg and /dev/null differ
diff --git a/frontend/public/assets/c9f42bda-47cf-4957-8c59-a7dada566ecb.webp_366xaf.webp b/frontend/public/assets/c9f42bda-47cf-4957-8c59-a7dada566ecb.webp_366xaf.webp
deleted file mode 100644
index 00fa53d..0000000
Binary files a/frontend/public/assets/c9f42bda-47cf-4957-8c59-a7dada566ecb.webp_366xaf.webp and /dev/null differ
diff --git a/frontend/public/assets/carousel/13b83caddbcf011e0b50eee03b26c7ba.png b/frontend/public/assets/carousel/13b83caddbcf011e0b50eee03b26c7ba.png
deleted file mode 100644
index d7fc421..0000000
Binary files a/frontend/public/assets/carousel/13b83caddbcf011e0b50eee03b26c7ba.png and /dev/null differ
diff --git a/frontend/public/assets/carousel/19ee30c37395ee21d738be878d3f8c60.png b/frontend/public/assets/carousel/19ee30c37395ee21d738be878d3f8c60.png
deleted file mode 100644
index 6ee029c..0000000
Binary files a/frontend/public/assets/carousel/19ee30c37395ee21d738be878d3f8c60.png and /dev/null differ
diff --git a/frontend/public/assets/carousel/23a1a45c0021df8cdea0ec0b37fb4291.png b/frontend/public/assets/carousel/23a1a45c0021df8cdea0ec0b37fb4291.png
deleted file mode 100644
index ade2a29..0000000
Binary files a/frontend/public/assets/carousel/23a1a45c0021df8cdea0ec0b37fb4291.png and /dev/null differ
diff --git a/frontend/public/assets/carousel/26d888e02a0142786f3be6daaee419f9.png b/frontend/public/assets/carousel/26d888e02a0142786f3be6daaee419f9.png
deleted file mode 100644
index 5373a3f..0000000
Binary files a/frontend/public/assets/carousel/26d888e02a0142786f3be6daaee419f9.png and /dev/null differ
diff --git a/frontend/public/assets/carousel/340d539b80432887304ff4d98f79b53c.png b/frontend/public/assets/carousel/340d539b80432887304ff4d98f79b53c.png
deleted file mode 100644
index d189b49..0000000
Binary files a/frontend/public/assets/carousel/340d539b80432887304ff4d98f79b53c.png and /dev/null differ
diff --git a/frontend/public/assets/carousel/55d5d2916224e4d023272d75283bc171.png b/frontend/public/assets/carousel/55d5d2916224e4d023272d75283bc171.png
deleted file mode 100644
index 5836809..0000000
Binary files a/frontend/public/assets/carousel/55d5d2916224e4d023272d75283bc171.png and /dev/null differ
diff --git a/frontend/public/assets/carousel/58bf0c6ffe1bab328b960718fd12496c.png b/frontend/public/assets/carousel/58bf0c6ffe1bab328b960718fd12496c.png
deleted file mode 100644
index 5a58888..0000000
Binary files a/frontend/public/assets/carousel/58bf0c6ffe1bab328b960718fd12496c.png and /dev/null differ
diff --git a/frontend/public/assets/carousel/61dd0b1a9e7f89703f46bbe99fc0e6fc.png b/frontend/public/assets/carousel/61dd0b1a9e7f89703f46bbe99fc0e6fc.png
deleted file mode 100644
index 3118fd1..0000000
Binary files a/frontend/public/assets/carousel/61dd0b1a9e7f89703f46bbe99fc0e6fc.png and /dev/null differ
diff --git a/frontend/public/assets/carousel/74a88fc7512d1fc4042472a8998d658a.png b/frontend/public/assets/carousel/74a88fc7512d1fc4042472a8998d658a.png
deleted file mode 100644
index 124c500..0000000
Binary files a/frontend/public/assets/carousel/74a88fc7512d1fc4042472a8998d658a.png and /dev/null differ
diff --git a/frontend/public/assets/carousel/a4761f27bd3a1aa32740e1da2445de46.png b/frontend/public/assets/carousel/a4761f27bd3a1aa32740e1da2445de46.png
deleted file mode 100644
index 089dab8..0000000
Binary files a/frontend/public/assets/carousel/a4761f27bd3a1aa32740e1da2445de46.png and /dev/null differ
diff --git a/frontend/public/assets/carousel/d64cd0704e75cee173b95e11548d9253.png b/frontend/public/assets/carousel/d64cd0704e75cee173b95e11548d9253.png
deleted file mode 100644
index dcd6a05..0000000
Binary files a/frontend/public/assets/carousel/d64cd0704e75cee173b95e11548d9253.png and /dev/null differ
diff --git a/frontend/public/assets/carousel/e12c2b47599d6d39200d29fcc7aa4ca1.png b/frontend/public/assets/carousel/e12c2b47599d6d39200d29fcc7aa4ca1.png
deleted file mode 100644
index bfb6d78..0000000
Binary files a/frontend/public/assets/carousel/e12c2b47599d6d39200d29fcc7aa4ca1.png and /dev/null differ
diff --git a/frontend/public/assets/carousel/f18b44809c1c5a935832895c58d6f2e1.png b/frontend/public/assets/carousel/f18b44809c1c5a935832895c58d6f2e1.png
deleted file mode 100644
index 5cf3da1..0000000
Binary files a/frontend/public/assets/carousel/f18b44809c1c5a935832895c58d6f2e1.png and /dev/null differ
diff --git a/frontend/public/assets/cdba341d-c7d6-42cb-9514-11e6ea970792-1.jpg b/frontend/public/assets/cdba341d-c7d6-42cb-9514-11e6ea970792-1.jpg
deleted file mode 100644
index e194c2e..0000000
Binary files a/frontend/public/assets/cdba341d-c7d6-42cb-9514-11e6ea970792-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/cdba341d-c7d6-42cb-9514-11e6ea970792.jpg b/frontend/public/assets/cdba341d-c7d6-42cb-9514-11e6ea970792.jpg
deleted file mode 100644
index e194c2e..0000000
Binary files a/frontend/public/assets/cdba341d-c7d6-42cb-9514-11e6ea970792.jpg and /dev/null differ
diff --git a/frontend/public/assets/d04ea9cfbb7675.jpg b/frontend/public/assets/d04ea9cfbb7675.jpg
deleted file mode 100644
index 0a481c5..0000000
Binary files a/frontend/public/assets/d04ea9cfbb7675.jpg and /dev/null differ
diff --git a/frontend/public/assets/d04eacb4f8ae2c.jpg b/frontend/public/assets/d04eacb4f8ae2c.jpg
deleted file mode 100644
index 0a481c5..0000000
Binary files a/frontend/public/assets/d04eacb4f8ae2c.jpg and /dev/null differ
diff --git a/frontend/public/assets/d04ec38bcdcc48.jpg b/frontend/public/assets/d04ec38bcdcc48.jpg
deleted file mode 100644
index 0a481c5..0000000
Binary files a/frontend/public/assets/d04ec38bcdcc48.jpg and /dev/null differ
diff --git a/frontend/public/assets/d04f7593ad430e.jpg b/frontend/public/assets/d04f7593ad430e.jpg
deleted file mode 100644
index 18db25e..0000000
Binary files a/frontend/public/assets/d04f7593ad430e.jpg and /dev/null differ
diff --git a/frontend/public/assets/d04f900c6f463a.jpg b/frontend/public/assets/d04f900c6f463a.jpg
deleted file mode 100644
index 3826782..0000000
Binary files a/frontend/public/assets/d04f900c6f463a.jpg and /dev/null differ
diff --git a/frontend/public/assets/d19041d8-9a97-4dc5-9852-2096949ed32c.jpg b/frontend/public/assets/d19041d8-9a97-4dc5-9852-2096949ed32c.jpg
deleted file mode 100644
index 444d340..0000000
Binary files a/frontend/public/assets/d19041d8-9a97-4dc5-9852-2096949ed32c.jpg and /dev/null differ
diff --git a/frontend/public/assets/d46198ad-3557-44e6-a05c-16160a535e10.png b/frontend/public/assets/d46198ad-3557-44e6-a05c-16160a535e10.png
deleted file mode 100644
index f33e0c6..0000000
Binary files a/frontend/public/assets/d46198ad-3557-44e6-a05c-16160a535e10.png and /dev/null differ
diff --git a/frontend/public/assets/d64cd0704e75cee173b95e11548d9253.png b/frontend/public/assets/d64cd0704e75cee173b95e11548d9253.png
deleted file mode 100644
index dcd6a05..0000000
Binary files a/frontend/public/assets/d64cd0704e75cee173b95e11548d9253.png and /dev/null differ
diff --git a/frontend/public/assets/dae2fc1f-329f-4301-b280-6d472c50c6b7.png b/frontend/public/assets/dae2fc1f-329f-4301-b280-6d472c50c6b7.png
deleted file mode 100644
index 0d86792..0000000
Binary files a/frontend/public/assets/dae2fc1f-329f-4301-b280-6d472c50c6b7.png and /dev/null differ
diff --git a/frontend/public/assets/ddd8c5f2-f4fc-4823-8f4c-289a9e1b87f3-1.jpg b/frontend/public/assets/ddd8c5f2-f4fc-4823-8f4c-289a9e1b87f3-1.jpg
deleted file mode 100644
index f6bafd8..0000000
Binary files a/frontend/public/assets/ddd8c5f2-f4fc-4823-8f4c-289a9e1b87f3-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/ddd8c5f2-f4fc-4823-8f4c-289a9e1b87f3.jpg b/frontend/public/assets/ddd8c5f2-f4fc-4823-8f4c-289a9e1b87f3.jpg
deleted file mode 100644
index f6bafd8..0000000
Binary files a/frontend/public/assets/ddd8c5f2-f4fc-4823-8f4c-289a9e1b87f3.jpg and /dev/null differ
diff --git a/frontend/public/assets/ded67a15-6274-4ffa-b72c-273a4627a3a2-1.jpg b/frontend/public/assets/ded67a15-6274-4ffa-b72c-273a4627a3a2-1.jpg
deleted file mode 100644
index ceafacb..0000000
Binary files a/frontend/public/assets/ded67a15-6274-4ffa-b72c-273a4627a3a2-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/ded67a15-6274-4ffa-b72c-273a4627a3a2.jpg b/frontend/public/assets/ded67a15-6274-4ffa-b72c-273a4627a3a2.jpg
deleted file mode 100644
index ceafacb..0000000
Binary files a/frontend/public/assets/ded67a15-6274-4ffa-b72c-273a4627a3a2.jpg and /dev/null differ
diff --git a/frontend/public/assets/defae900f8fc26.jpg b/frontend/public/assets/defae900f8fc26.jpg
deleted file mode 100644
index 0a481c5..0000000
Binary files a/frontend/public/assets/defae900f8fc26.jpg and /dev/null differ
diff --git a/frontend/public/assets/e12c2b47599d6d39200d29fcc7aa4ca1.png b/frontend/public/assets/e12c2b47599d6d39200d29fcc7aa4ca1.png
deleted file mode 100644
index bfb6d78..0000000
Binary files a/frontend/public/assets/e12c2b47599d6d39200d29fcc7aa4ca1.png and /dev/null differ
diff --git a/frontend/public/assets/e22e5684-558e-4bc2-9097-7e01de96dde7.jpg b/frontend/public/assets/e22e5684-558e-4bc2-9097-7e01de96dde7.jpg
deleted file mode 100644
index 374cece..0000000
Binary files a/frontend/public/assets/e22e5684-558e-4bc2-9097-7e01de96dde7.jpg and /dev/null differ
diff --git a/frontend/public/assets/e60d7617-b843-493c-9b18-5650bfce46ec.jpg_560xaf.jpg b/frontend/public/assets/e60d7617-b843-493c-9b18-5650bfce46ec.jpg_560xaf.jpg
deleted file mode 100644
index 300a7a8..0000000
Binary files a/frontend/public/assets/e60d7617-b843-493c-9b18-5650bfce46ec.jpg_560xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/e850333a-dffc-45c9-b96e-f4f194d8f1ce.jpg b/frontend/public/assets/e850333a-dffc-45c9-b96e-f4f194d8f1ce.jpg
deleted file mode 100644
index 7b5b884..0000000
Binary files a/frontend/public/assets/e850333a-dffc-45c9-b96e-f4f194d8f1ce.jpg and /dev/null differ
diff --git a/frontend/public/assets/ea8cb4bf-1391-46be-b20d-2fc6f785d1ba.jpg b/frontend/public/assets/ea8cb4bf-1391-46be-b20d-2fc6f785d1ba.jpg
deleted file mode 100644
index 98dc717..0000000
Binary files a/frontend/public/assets/ea8cb4bf-1391-46be-b20d-2fc6f785d1ba.jpg and /dev/null differ
diff --git a/frontend/public/assets/ea8cb4bf-1391-46be-b20d-2fc6f785d1ba.jpg_366xaf.jpg b/frontend/public/assets/ea8cb4bf-1391-46be-b20d-2fc6f785d1ba.jpg_366xaf.jpg
deleted file mode 100644
index 101b385..0000000
Binary files a/frontend/public/assets/ea8cb4bf-1391-46be-b20d-2fc6f785d1ba.jpg_366xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/eab93efc-3954-4d4e-b469-4d8e59016a71-1.jpg b/frontend/public/assets/eab93efc-3954-4d4e-b469-4d8e59016a71-1.jpg
deleted file mode 100644
index 715dd75..0000000
Binary files a/frontend/public/assets/eab93efc-3954-4d4e-b469-4d8e59016a71-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/eab93efc-3954-4d4e-b469-4d8e59016a71-2.jpg b/frontend/public/assets/eab93efc-3954-4d4e-b469-4d8e59016a71-2.jpg
deleted file mode 100644
index 715dd75..0000000
Binary files a/frontend/public/assets/eab93efc-3954-4d4e-b469-4d8e59016a71-2.jpg and /dev/null differ
diff --git a/frontend/public/assets/eab93efc-3954-4d4e-b469-4d8e59016a71.jpg b/frontend/public/assets/eab93efc-3954-4d4e-b469-4d8e59016a71.jpg
deleted file mode 100644
index 715dd75..0000000
Binary files a/frontend/public/assets/eab93efc-3954-4d4e-b469-4d8e59016a71.jpg and /dev/null differ
diff --git a/frontend/public/assets/edec8a67-bf55-41e1-9ca3-1b20eb1c0ef6-1.png b/frontend/public/assets/edec8a67-bf55-41e1-9ca3-1b20eb1c0ef6-1.png
deleted file mode 100644
index 2cf8b0f..0000000
Binary files a/frontend/public/assets/edec8a67-bf55-41e1-9ca3-1b20eb1c0ef6-1.png and /dev/null differ
diff --git a/frontend/public/assets/edec8a67-bf55-41e1-9ca3-1b20eb1c0ef6.png b/frontend/public/assets/edec8a67-bf55-41e1-9ca3-1b20eb1c0ef6.png
deleted file mode 100644
index 2cf8b0f..0000000
Binary files a/frontend/public/assets/edec8a67-bf55-41e1-9ca3-1b20eb1c0ef6.png and /dev/null differ
diff --git a/frontend/public/assets/f18b44809c1c5a935832895c58d6f2e1.png b/frontend/public/assets/f18b44809c1c5a935832895c58d6f2e1.png
deleted file mode 100644
index 5cf3da1..0000000
Binary files a/frontend/public/assets/f18b44809c1c5a935832895c58d6f2e1.png and /dev/null differ
diff --git a/frontend/public/assets/f53bc710-0579-48d0-9813-4ed33ad97589-1.jpg b/frontend/public/assets/f53bc710-0579-48d0-9813-4ed33ad97589-1.jpg
deleted file mode 100644
index a6e36ea..0000000
Binary files a/frontend/public/assets/f53bc710-0579-48d0-9813-4ed33ad97589-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/f53bc710-0579-48d0-9813-4ed33ad97589.jpg b/frontend/public/assets/f53bc710-0579-48d0-9813-4ed33ad97589.jpg
deleted file mode 100644
index a6e36ea..0000000
Binary files a/frontend/public/assets/f53bc710-0579-48d0-9813-4ed33ad97589.jpg and /dev/null differ
diff --git a/frontend/public/assets/f8e856d9-494f-4a07-be94-d134326a476d-1.jpg b/frontend/public/assets/f8e856d9-494f-4a07-be94-d134326a476d-1.jpg
deleted file mode 100644
index 6676063..0000000
Binary files a/frontend/public/assets/f8e856d9-494f-4a07-be94-d134326a476d-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/f8e856d9-494f-4a07-be94-d134326a476d.jpg b/frontend/public/assets/f8e856d9-494f-4a07-be94-d134326a476d.jpg
deleted file mode 100644
index 6676063..0000000
Binary files a/frontend/public/assets/f8e856d9-494f-4a07-be94-d134326a476d.jpg and /dev/null differ
diff --git a/frontend/public/assets/f987981d-55d0-4d51-8ebb-85a05b07b0f9.png_366xaf.png b/frontend/public/assets/f987981d-55d0-4d51-8ebb-85a05b07b0f9.png_366xaf.png
deleted file mode 100644
index 8839879..0000000
Binary files a/frontend/public/assets/f987981d-55d0-4d51-8ebb-85a05b07b0f9.png_366xaf.png and /dev/null differ
diff --git a/frontend/public/assets/fa6eef08-5365-4be1-9830-bd592231ba7f.webp_366xaf.webp b/frontend/public/assets/fa6eef08-5365-4be1-9830-bd592231ba7f.webp_366xaf.webp
deleted file mode 100644
index 71fc7e2..0000000
Binary files a/frontend/public/assets/fa6eef08-5365-4be1-9830-bd592231ba7f.webp_366xaf.webp and /dev/null differ
diff --git a/frontend/public/assets/fa7da334-f3e8-4998-866a-82935c87ae66.jpg b/frontend/public/assets/fa7da334-f3e8-4998-866a-82935c87ae66.jpg
deleted file mode 100644
index cf42d31..0000000
Binary files a/frontend/public/assets/fa7da334-f3e8-4998-866a-82935c87ae66.jpg and /dev/null differ
diff --git a/frontend/public/assets/fab56a03-ffa3-4593-a3c9-890a347f0161.jpg b/frontend/public/assets/fab56a03-ffa3-4593-a3c9-890a347f0161.jpg
deleted file mode 100644
index a849867..0000000
Binary files a/frontend/public/assets/fab56a03-ffa3-4593-a3c9-890a347f0161.jpg and /dev/null differ
diff --git a/frontend/public/assets/faf429be-6c93-425d-9493-3952d184841a.webp_366xaf.webp b/frontend/public/assets/faf429be-6c93-425d-9493-3952d184841a.webp_366xaf.webp
deleted file mode 100644
index 429b6ad..0000000
Binary files a/frontend/public/assets/faf429be-6c93-425d-9493-3952d184841a.webp_366xaf.webp and /dev/null differ
diff --git a/frontend/public/assets/fb5847fc-06f3-4f5f-974a-dca589524028.jpg b/frontend/public/assets/fb5847fc-06f3-4f5f-974a-dca589524028.jpg
deleted file mode 100644
index 8ae85ab..0000000
Binary files a/frontend/public/assets/fb5847fc-06f3-4f5f-974a-dca589524028.jpg and /dev/null differ
diff --git a/frontend/public/assets/fd0631dd-8d59-4ec3-acea-18455e8c1629-1.jpg b/frontend/public/assets/fd0631dd-8d59-4ec3-acea-18455e8c1629-1.jpg
deleted file mode 100644
index 56b5f16..0000000
Binary files a/frontend/public/assets/fd0631dd-8d59-4ec3-acea-18455e8c1629-1.jpg and /dev/null differ
diff --git a/frontend/public/assets/fd0631dd-8d59-4ec3-acea-18455e8c1629.jpg b/frontend/public/assets/fd0631dd-8d59-4ec3-acea-18455e8c1629.jpg
deleted file mode 100644
index 56b5f16..0000000
Binary files a/frontend/public/assets/fd0631dd-8d59-4ec3-acea-18455e8c1629.jpg and /dev/null differ
diff --git a/frontend/public/assets/ff92fe28-584a-436b-abdc-afc422e32b43.jpg_560xaf.jpg b/frontend/public/assets/ff92fe28-584a-436b-abdc-afc422e32b43.jpg_560xaf.jpg
deleted file mode 100644
index d9280c9..0000000
Binary files a/frontend/public/assets/ff92fe28-584a-436b-abdc-afc422e32b43.jpg_560xaf.jpg and /dev/null differ
diff --git a/frontend/public/assets/logo_hd.png b/frontend/public/assets/logo_hd.png
deleted file mode 100644
index 116ae46..0000000
Binary files a/frontend/public/assets/logo_hd.png and /dev/null differ
diff --git a/frontend/public/assets/no-img.svg b/frontend/public/assets/no-img.svg
deleted file mode 100644
index 7f44a3d..0000000
--- a/frontend/public/assets/no-img.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/frontend/public/assets/s.png b/frontend/public/assets/s.png
deleted file mode 100644
index 950d1f9..0000000
Binary files a/frontend/public/assets/s.png and /dev/null differ
diff --git a/frontend/public/legacy-cms-product-detail/no-img.svg b/frontend/public/legacy-cms-product-detail/no-img.svg
deleted file mode 100644
index 7f44a3d..0000000
--- a/frontend/public/legacy-cms-product-detail/no-img.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/frontend/public/全国门店_files/05e55956-2463-4314-9f28-bdc4c160100d.png b/frontend/public/全国门店_files/05e55956-2463-4314-9f28-bdc4c160100d.png
deleted file mode 100644
index fec5f37..0000000
Binary files a/frontend/public/全国门店_files/05e55956-2463-4314-9f28-bdc4c160100d.png and /dev/null differ
diff --git a/frontend/public/全国门店_files/06cd51aa-048e-43f0-a8fd-a553842b34aa.jpg b/frontend/public/全国门店_files/06cd51aa-048e-43f0-a8fd-a553842b34aa.jpg
deleted file mode 100644
index dfd5540..0000000
Binary files a/frontend/public/全国门店_files/06cd51aa-048e-43f0-a8fd-a553842b34aa.jpg and /dev/null differ
diff --git a/frontend/public/全国门店_files/13c80529-c446-4850-affb-408badf8209c.jpg b/frontend/public/全国门店_files/13c80529-c446-4850-affb-408badf8209c.jpg
deleted file mode 100644
index ee653ff..0000000
Binary files a/frontend/public/全国门店_files/13c80529-c446-4850-affb-408badf8209c.jpg and /dev/null differ
diff --git a/frontend/public/全国门店_files/151dfdaf-d6ab-4fb1-b4dd-eeb74c4ae3da.jpg_366xaf.jpg b/frontend/public/全国门店_files/151dfdaf-d6ab-4fb1-b4dd-eeb74c4ae3da.jpg_366xaf.jpg
deleted file mode 100644
index 0d1eff6..0000000
Binary files a/frontend/public/全国门店_files/151dfdaf-d6ab-4fb1-b4dd-eeb74c4ae3da.jpg_366xaf.jpg and /dev/null differ
diff --git a/frontend/public/全国门店_files/38e30d18-5165-412a-b5c0-35c0bd9ce5cf.jpg_366xaf.jpg b/frontend/public/全国门店_files/38e30d18-5165-412a-b5c0-35c0bd9ce5cf.jpg_366xaf.jpg
deleted file mode 100644
index f5715d0..0000000
Binary files a/frontend/public/全国门店_files/38e30d18-5165-412a-b5c0-35c0bd9ce5cf.jpg_366xaf.jpg and /dev/null differ
diff --git a/frontend/public/全国门店_files/43839dea-7aa4-40db-84ae-7def7861bee3.jpg_366xaf.jpg b/frontend/public/全国门店_files/43839dea-7aa4-40db-84ae-7def7861bee3.jpg_366xaf.jpg
deleted file mode 100644
index 530ad98..0000000
Binary files a/frontend/public/全国门店_files/43839dea-7aa4-40db-84ae-7def7861bee3.jpg_366xaf.jpg and /dev/null differ
diff --git a/frontend/public/全国门店_files/66ee1525-0134-4626-b019-3c55ddbd7c9c.jpg_366xaf.jpg b/frontend/public/全国门店_files/66ee1525-0134-4626-b019-3c55ddbd7c9c.jpg_366xaf.jpg
deleted file mode 100644
index 54efa25..0000000
Binary files a/frontend/public/全国门店_files/66ee1525-0134-4626-b019-3c55ddbd7c9c.jpg_366xaf.jpg and /dev/null differ
diff --git a/frontend/public/全国门店_files/76bd053f-e42a-4557-b9fa-a5706a1d6725.jpg b/frontend/public/全国门店_files/76bd053f-e42a-4557-b9fa-a5706a1d6725.jpg
deleted file mode 100644
index 5e19850..0000000
Binary files a/frontend/public/全国门店_files/76bd053f-e42a-4557-b9fa-a5706a1d6725.jpg and /dev/null differ
diff --git a/frontend/public/全国门店_files/7a062633-43d7-4cf7-9d97-d491afb96f50.jpg b/frontend/public/全国门店_files/7a062633-43d7-4cf7-9d97-d491afb96f50.jpg
deleted file mode 100644
index 39ccb5b..0000000
Binary files a/frontend/public/全国门店_files/7a062633-43d7-4cf7-9d97-d491afb96f50.jpg and /dev/null differ
diff --git a/frontend/public/全国门店_files/86b45b9a-c1ec-4b9d-8d16-50b71df3f87d.jpg b/frontend/public/全国门店_files/86b45b9a-c1ec-4b9d-8d16-50b71df3f87d.jpg
deleted file mode 100644
index 6ff36db..0000000
Binary files a/frontend/public/全国门店_files/86b45b9a-c1ec-4b9d-8d16-50b71df3f87d.jpg and /dev/null differ
diff --git a/frontend/public/全国门店_files/990a73b8-b155-4497-bd14-bb4471955bb2.jpg b/frontend/public/全国门店_files/990a73b8-b155-4497-bd14-bb4471955bb2.jpg
deleted file mode 100644
index 749098b..0000000
Binary files a/frontend/public/全国门店_files/990a73b8-b155-4497-bd14-bb4471955bb2.jpg and /dev/null differ
diff --git a/frontend/public/全国门店_files/a18bd917-c7b1-4311-81e1-a7d6fb9ee88c.jpg_366xaf.jpg b/frontend/public/全国门店_files/a18bd917-c7b1-4311-81e1-a7d6fb9ee88c.jpg_366xaf.jpg
deleted file mode 100644
index eea0cfb..0000000
Binary files a/frontend/public/全国门店_files/a18bd917-c7b1-4311-81e1-a7d6fb9ee88c.jpg_366xaf.jpg and /dev/null differ
diff --git a/frontend/public/全国门店_files/b475b81f-4fc2-4a2f-83c0-f9f53bbbd9ff.jpg b/frontend/public/全国门店_files/b475b81f-4fc2-4a2f-83c0-f9f53bbbd9ff.jpg
deleted file mode 100644
index ea23e3c..0000000
Binary files a/frontend/public/全国门店_files/b475b81f-4fc2-4a2f-83c0-f9f53bbbd9ff.jpg and /dev/null differ
diff --git a/frontend/public/全国门店_files/b5d1469c-e180-4082-bd49-f1908c4fcd70.png b/frontend/public/全国门店_files/b5d1469c-e180-4082-bd49-f1908c4fcd70.png
deleted file mode 100644
index b254a14..0000000
Binary files a/frontend/public/全国门店_files/b5d1469c-e180-4082-bd49-f1908c4fcd70.png and /dev/null differ
diff --git a/frontend/public/全国门店_files/c8fdaa92-cc60-43bd-ae81-dde0780d8b55.jpg b/frontend/public/全国门店_files/c8fdaa92-cc60-43bd-ae81-dde0780d8b55.jpg
deleted file mode 100644
index 53da7d3..0000000
Binary files a/frontend/public/全国门店_files/c8fdaa92-cc60-43bd-ae81-dde0780d8b55.jpg and /dev/null differ
diff --git a/frontend/public/全国门店_files/ea8cb4bf-1391-46be-b20d-2fc6f785d1ba.jpg_366xaf.jpg b/frontend/public/全国门店_files/ea8cb4bf-1391-46be-b20d-2fc6f785d1ba.jpg_366xaf.jpg
deleted file mode 100644
index 101b385..0000000
Binary files a/frontend/public/全国门店_files/ea8cb4bf-1391-46be-b20d-2fc6f785d1ba.jpg_366xaf.jpg and /dev/null differ
diff --git a/frontend/public/全国门店_files/eab93efc-3954-4d4e-b469-4d8e59016a71.jpg b/frontend/public/全国门店_files/eab93efc-3954-4d4e-b469-4d8e59016a71.jpg
deleted file mode 100644
index 715dd75..0000000
Binary files a/frontend/public/全国门店_files/eab93efc-3954-4d4e-b469-4d8e59016a71.jpg and /dev/null differ
diff --git a/frontend/public/全国门店_files/logo_hd.png b/frontend/public/全国门店_files/logo_hd.png
deleted file mode 100644
index 116ae46..0000000
Binary files a/frontend/public/全国门店_files/logo_hd.png and /dev/null differ
diff --git a/frontend/public/全国门店_files/no-img.svg b/frontend/public/全国门店_files/no-img.svg
deleted file mode 100644
index 7f44a3d..0000000
--- a/frontend/public/全国门店_files/no-img.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/frontend/public/品质技术_files/05e55956-2463-4314-9f28-bdc4c160100d.png b/frontend/public/品质技术_files/05e55956-2463-4314-9f28-bdc4c160100d.png
deleted file mode 100644
index fec5f37..0000000
Binary files a/frontend/public/品质技术_files/05e55956-2463-4314-9f28-bdc4c160100d.png and /dev/null differ
diff --git a/frontend/public/品质技术_files/06cd51aa-048e-43f0-a8fd-a553842b34aa.jpg b/frontend/public/品质技术_files/06cd51aa-048e-43f0-a8fd-a553842b34aa.jpg
deleted file mode 100644
index dfd5540..0000000
Binary files a/frontend/public/品质技术_files/06cd51aa-048e-43f0-a8fd-a553842b34aa.jpg and /dev/null differ
diff --git a/frontend/public/品质技术_files/13c80529-c446-4850-affb-408badf8209c.jpg b/frontend/public/品质技术_files/13c80529-c446-4850-affb-408badf8209c.jpg
deleted file mode 100644
index ee653ff..0000000
Binary files a/frontend/public/品质技术_files/13c80529-c446-4850-affb-408badf8209c.jpg and /dev/null differ
diff --git a/frontend/public/品质技术_files/18bfc9c5-a52e-432a-9e85-4cdabe4e6692.jpg b/frontend/public/品质技术_files/18bfc9c5-a52e-432a-9e85-4cdabe4e6692.jpg
deleted file mode 100644
index a3a7ff0..0000000
Binary files a/frontend/public/品质技术_files/18bfc9c5-a52e-432a-9e85-4cdabe4e6692.jpg and /dev/null differ
diff --git a/frontend/public/品质技术_files/3d889e7d-6d30-4467-84c1-7842b384db56.jpg b/frontend/public/品质技术_files/3d889e7d-6d30-4467-84c1-7842b384db56.jpg
deleted file mode 100644
index cdea4f7..0000000
Binary files a/frontend/public/品质技术_files/3d889e7d-6d30-4467-84c1-7842b384db56.jpg and /dev/null differ
diff --git a/frontend/public/品质技术_files/463b48bf-268b-4f1d-9007-f946b7c80a7e.jpg b/frontend/public/品质技术_files/463b48bf-268b-4f1d-9007-f946b7c80a7e.jpg
deleted file mode 100644
index 4d05851..0000000
Binary files a/frontend/public/品质技术_files/463b48bf-268b-4f1d-9007-f946b7c80a7e.jpg and /dev/null differ
diff --git a/frontend/public/品质技术_files/4e2a81ac-7d5c-4360-9b97-fb2eb69ea9fd.jpg b/frontend/public/品质技术_files/4e2a81ac-7d5c-4360-9b97-fb2eb69ea9fd.jpg
deleted file mode 100644
index 2c13bbe..0000000
Binary files a/frontend/public/品质技术_files/4e2a81ac-7d5c-4360-9b97-fb2eb69ea9fd.jpg and /dev/null differ
diff --git a/frontend/public/品质技术_files/5cc71809-6323-4cb8-9567-459284da4710.jpg b/frontend/public/品质技术_files/5cc71809-6323-4cb8-9567-459284da4710.jpg
deleted file mode 100644
index 2a1fab1..0000000
Binary files a/frontend/public/品质技术_files/5cc71809-6323-4cb8-9567-459284da4710.jpg and /dev/null differ
diff --git a/frontend/public/品质技术_files/5f863c2d-0a89-43d8-9162-0b79a5a14fae.jpg b/frontend/public/品质技术_files/5f863c2d-0a89-43d8-9162-0b79a5a14fae.jpg
deleted file mode 100644
index 6a74837..0000000
Binary files a/frontend/public/品质技术_files/5f863c2d-0a89-43d8-9162-0b79a5a14fae.jpg and /dev/null differ
diff --git a/frontend/public/品质技术_files/6acb65b1-65cd-4673-a059-ffca2d0dd251.jpg b/frontend/public/品质技术_files/6acb65b1-65cd-4673-a059-ffca2d0dd251.jpg
deleted file mode 100644
index 2479c30..0000000
Binary files a/frontend/public/品质技术_files/6acb65b1-65cd-4673-a059-ffca2d0dd251.jpg and /dev/null differ
diff --git a/frontend/public/品质技术_files/73345a62-d391-41cd-a13d-8c1eb0b52956.jpg b/frontend/public/品质技术_files/73345a62-d391-41cd-a13d-8c1eb0b52956.jpg
deleted file mode 100644
index f4020e9..0000000
Binary files a/frontend/public/品质技术_files/73345a62-d391-41cd-a13d-8c1eb0b52956.jpg and /dev/null differ
diff --git a/frontend/public/品质技术_files/76bd053f-e42a-4557-b9fa-a5706a1d6725.jpg b/frontend/public/品质技术_files/76bd053f-e42a-4557-b9fa-a5706a1d6725.jpg
deleted file mode 100644
index 5e19850..0000000
Binary files a/frontend/public/品质技术_files/76bd053f-e42a-4557-b9fa-a5706a1d6725.jpg and /dev/null differ
diff --git a/frontend/public/品质技术_files/7a062633-43d7-4cf7-9d97-d491afb96f50.jpg b/frontend/public/品质技术_files/7a062633-43d7-4cf7-9d97-d491afb96f50.jpg
deleted file mode 100644
index 39ccb5b..0000000
Binary files a/frontend/public/品质技术_files/7a062633-43d7-4cf7-9d97-d491afb96f50.jpg and /dev/null differ
diff --git a/frontend/public/品质技术_files/86b45b9a-c1ec-4b9d-8d16-50b71df3f87d.jpg b/frontend/public/品质技术_files/86b45b9a-c1ec-4b9d-8d16-50b71df3f87d.jpg
deleted file mode 100644
index 6ff36db..0000000
Binary files a/frontend/public/品质技术_files/86b45b9a-c1ec-4b9d-8d16-50b71df3f87d.jpg and /dev/null differ
diff --git a/frontend/public/品质技术_files/97b0ceb6-45b4-4174-bf04-f789bd788279.jpg b/frontend/public/品质技术_files/97b0ceb6-45b4-4174-bf04-f789bd788279.jpg
deleted file mode 100644
index ab514cf..0000000
Binary files a/frontend/public/品质技术_files/97b0ceb6-45b4-4174-bf04-f789bd788279.jpg and /dev/null differ
diff --git a/frontend/public/品质技术_files/990a73b8-b155-4497-bd14-bb4471955bb2.jpg b/frontend/public/品质技术_files/990a73b8-b155-4497-bd14-bb4471955bb2.jpg
deleted file mode 100644
index 749098b..0000000
Binary files a/frontend/public/品质技术_files/990a73b8-b155-4497-bd14-bb4471955bb2.jpg and /dev/null differ
diff --git a/frontend/public/品质技术_files/b475b81f-4fc2-4a2f-83c0-f9f53bbbd9ff.jpg b/frontend/public/品质技术_files/b475b81f-4fc2-4a2f-83c0-f9f53bbbd9ff.jpg
deleted file mode 100644
index ea23e3c..0000000
Binary files a/frontend/public/品质技术_files/b475b81f-4fc2-4a2f-83c0-f9f53bbbd9ff.jpg and /dev/null differ
diff --git a/frontend/public/品质技术_files/b5d1469c-e180-4082-bd49-f1908c4fcd70.png b/frontend/public/品质技术_files/b5d1469c-e180-4082-bd49-f1908c4fcd70.png
deleted file mode 100644
index b254a14..0000000
Binary files a/frontend/public/品质技术_files/b5d1469c-e180-4082-bd49-f1908c4fcd70.png and /dev/null differ
diff --git a/frontend/public/品质技术_files/c8fdaa92-cc60-43bd-ae81-dde0780d8b55.jpg b/frontend/public/品质技术_files/c8fdaa92-cc60-43bd-ae81-dde0780d8b55.jpg
deleted file mode 100644
index 53da7d3..0000000
Binary files a/frontend/public/品质技术_files/c8fdaa92-cc60-43bd-ae81-dde0780d8b55.jpg and /dev/null differ
diff --git a/frontend/public/品质技术_files/eab93efc-3954-4d4e-b469-4d8e59016a71.jpg b/frontend/public/品质技术_files/eab93efc-3954-4d4e-b469-4d8e59016a71.jpg
deleted file mode 100644
index 715dd75..0000000
Binary files a/frontend/public/品质技术_files/eab93efc-3954-4d4e-b469-4d8e59016a71.jpg and /dev/null differ
diff --git a/frontend/public/品质技术_files/fcbbe725-fe1f-4430-874d-f777752b8638.jpg b/frontend/public/品质技术_files/fcbbe725-fe1f-4430-874d-f777752b8638.jpg
deleted file mode 100644
index 911b9d3..0000000
Binary files a/frontend/public/品质技术_files/fcbbe725-fe1f-4430-874d-f777752b8638.jpg and /dev/null differ
diff --git a/frontend/public/品质技术_files/no-img.svg b/frontend/public/品质技术_files/no-img.svg
deleted file mode 100644
index 7f44a3d..0000000
--- a/frontend/public/品质技术_files/no-img.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/frontend/public/品质技术_files/s.png b/frontend/public/品质技术_files/s.png
deleted file mode 100644
index 950d1f9..0000000
Binary files a/frontend/public/品质技术_files/s.png and /dev/null differ
diff --git a/frontend/src/App.vue b/frontend/src/App.vue
index 87e8dde..2d58318 100644
--- a/frontend/src/App.vue
+++ b/frontend/src/App.vue
@@ -99,6 +99,20 @@ const PRESALE_CDN_IN_CSS = /https?:\/\/(?:www\.)?presale\.jhtsoft\.com\/[^"'\s)]
const ALICDN_IN_CSS = /https?:\/\/[^/"'\s)]+\.alicdn\.com\/[^"'\s)]+/gi
/** 同步脚本写入的根路径 /assets/,在 VITE_BASE_URL 子目录部署时会请求错主机;改为带 base 的绝对路径 */
const ROOT_ASSETS_IN_CSS_URL = /url\(\s*(['"]?)(\/assets\/[^'")]+)\1\s*\)/gi
+const LEGACY_LOCAL_IMAGE_IN_FILES_RE =
+ /(?:\.{1,2}\/|\/)?[^/\s]*_files\/([^/\s]+\.(?:png|jpe?g|gif|webp|svg))(?:\?[^\s"'<>]*)?/gi
+const BLANK_IMAGE_DATA_URI = 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw=='
+
+function mapLegacyLocalImageToRemote(url) {
+ if (!url || typeof url !== 'string') return ''
+ const normalized = url.trim().replace(/\\/g, '/')
+ const matched = normalized.match(
+ /(?:\.{1,2}\/|\/)?[^/\s]*_files\/([^/\s]+\.(?:png|jpe?g|gif|webp|svg))(?:\?[^\s"'<>]*)?$/i
+ )
+ if (!matched) return ''
+ const filename = matched[1]
+ return filename ? publicAsset(`assets/${filename}`) : ''
+}
function isArchivedCdnUrl(url) {
return typeof url === 'string' && ARCHIVED_CDN_RE.test(url)
@@ -108,6 +122,12 @@ const bodyClasses = ['saf-show', 'saf-pc', 'saf-fullpage']
const ENABLE_LEGACY_RUNTIME = false
// 网站前端改为动态模式:始终走接口注入,不再走静态短路。
const STATIC_ONLY_MODE = false
+const API_BASE = (import.meta.env.VITE_SITE_API_BASE || '/site').replace(/\/$/, '')
+const REQUIRE_BACKEND_ONLINE = String(import.meta.env.VITE_REQUIRE_BACKEND_ONLINE ?? 'true') !== 'false'
+const backendOnlineChecked = ref(!REQUIRE_BACKEND_ONLINE)
+const backendOnline = ref(true)
+const STORE_HYDRATING_CLASS = 'huayang-store-hydrating'
+let bootstrapRunId = 0
const pageConfigs = {
home: {
title: '烟台华阳食品有限公司-海洋水产品,海洋食品,华阳水产品',
@@ -213,8 +233,48 @@ function resolvePageKey() {
const currentKey = ref(resolvePageKey())
const currentPageKey = computed(() => currentKey.value)
const isAdminPage = computed(() => currentKey.value === 'admin')
+const showOfflinePage = computed(
+ () => !isAdminPage.value && REQUIRE_BACKEND_ONLINE && backendOnlineChecked.value && !backendOnline.value
+)
const STATIC_SHELL_PAGES = new Set()
+async function checkBackendHealthOnStartup() {
+ if (!REQUIRE_BACKEND_ONLINE) return
+ const healthCandidates = [
+ `${API_BASE}/navigation/public?navType=main`,
+ `${API_BASE}/config/public/list`,
+ `${API_BASE}/home/public?lang=zh_cn`
+ ]
+ try {
+ backendOnline.value = false
+ for (const url of healthCandidates) {
+ let res
+ try {
+ res = await fetch(url, { cache: 'no-store' })
+ } catch {
+ continue
+ }
+ if (!res.ok) continue
+ let json = null
+ try {
+ json = await res.json()
+ } catch {
+ // 能建立 HTTP 连接且返回 2xx,至少说明后端在线
+ backendOnline.value = true
+ break
+ }
+ if (Number(json?.code) === 200) {
+ backendOnline.value = true
+ break
+ }
+ }
+ } catch {
+ backendOnline.value = false
+ } finally {
+ backendOnlineChecked.value = true
+ }
+}
+
function mapRemoteAssetToLocal(url) {
if (!url || !isArchivedCdnUrl(url)) return url
const filename = url.split('/').pop()?.split('?')[0] || ''
@@ -226,6 +286,8 @@ function normalizeAssetPath(url) {
if (!url) return ''
if (isArchivedCdnUrl(url)) return mapRemoteAssetToLocal(url)
if (url.startsWith('http://') || url.startsWith('https://') || url.startsWith('//')) return url
+ const remoteFromLegacyLocal = mapLegacyLocalImageToRemote(url)
+ if (remoteFromLegacyLocal) return remoteFromLegacyLocal
const matchedPrefix = ASSET_DIR_PREFIXES.find((prefix) => url.startsWith(prefix))
if (matchedPrefix) return publicAsset(`assets/${url.slice(matchedPrefix.length)}`)
if (url.startsWith('./')) return url
@@ -241,12 +303,20 @@ function rewriteHtmlAssetPath(html) {
nextHtml = nextHtml.replace(/\.\/carousel\/([^"')\s]+)/gi, (_, filename) =>
publicAsset(`assets/carousel/${filename}`)
)
+ nextHtml = nextHtml.replace(
+ LEGACY_LOCAL_IMAGE_IN_FILES_RE,
+ (matched) => mapLegacyLocalImageToRemote(matched) || publicAsset('assets/no-img.svg')
+ )
nextHtml = nextHtml.replace(/https?:\/\/omo-oss-(?:image|file)\d*\.thefast(?:img|file)\.com\/[^\s"'<>)\]}]+/gi, (match) =>
mapRemoteAssetToLocal(match)
)
nextHtml = nextHtml.replace(
/url\(https?:\/\/omo-oss-(?:image|file)\d*\.thefast(?:img|file)\.com\/[^\s"'<>)\]}]+?\)/gi,
- () => `url(${publicAsset('assets/no-img.svg')})`
+ (match) => {
+ const urlMatch = match.match(/https?:\/\/omo-oss-(?:image|file)\d*\.thefast(?:img|file)\.com\/[^\s"'<>)\]}]+/i)
+ const mapped = urlMatch?.[0] ? mapRemoteAssetToLocal(urlMatch[0]) : publicAsset('assets/no-img.svg')
+ return `url("${mapped}")`
+ }
)
return nextHtml
}
@@ -299,9 +369,7 @@ function mapHaihoSiteUrlToLocal(url) {
}
function rewriteInternalLinks(html) {
- let nextHtml = html.replace(/https?:\/\/(?:[a-z0-9-]+\.)*haihofoods\.com[^\s"'<>)]*/gi, (match) =>
- mapHaihoSiteUrlToLocal(match)
- )
+ let nextHtml = html
// Normalize relative/root-relative site links in archived HTML.
nextHtml = nextHtml.replace(
@@ -315,6 +383,50 @@ function rewriteInternalLinks(html) {
return nextHtml
}
+function isLocalhostUrl(raw) {
+ if (!raw || typeof raw !== 'string') return false
+ try {
+ const u = new URL(raw)
+ const h = String(u.hostname || '').toLowerCase()
+ return h === 'localhost' || h === '127.0.0.1' || h === '0.0.0.0' || h === '[::1]'
+ } catch {
+ return false
+ }
+}
+
+function isHaihoSiteUrl(raw) {
+ if (!raw || typeof raw !== 'string') return false
+ try {
+ const u = new URL(raw)
+ return /(^|\.)haihofoods\.com$/i.test(String(u.hostname || ''))
+ } catch {
+ return false
+ }
+}
+
+/**
+ * 清理归档 HTML 里的外部 http/https 资源:
+ * - 保留 localhost / 127.0.0.1 等本机地址
+ * - 仅处理 href 跳转;图片与样式资源保留,避免误伤正常图像
+ * 注意:不处理 xmlns="http://www.w3.org/...",避免破坏 SVG。
+ */
+function stripExternalHttpHttpsUrls(html) {
+ if (!html || typeof html !== 'string') return html
+
+ let out = html
+ out = out.replace(
+ /\bhref\s*=\s*(['"])(https?:\/\/[^"']+)\1/gi,
+ (full, quote, url) => {
+ if (isLocalhostUrl(url)) return full
+ if (isHaihoSiteUrl(url)) {
+ return `href=${quote}${mapHaihoSiteUrlToLocal(url)}${quote}`
+ }
+ return `href=${quote}javascript:;${quote}`
+ }
+ )
+ return out
+}
+
/**
* 修复「UTF-8 被按 Latin-1/CP1252 显示」导致的乱码(如 全国门店)。
* 仅在确实包含可疑片段时启用,避免影响正常文本。
@@ -368,11 +480,11 @@ function repairMojibakeText(input) {
}
}
-/** 必须先拉取再注入:若直接 link.href=服务器 CSS,浏览器会立刻解析其中的 url(https://omo-oss-…),在异步 patch 之前就已请求 CDN */
+/** 必须先拉取再注入:若直接 link.href=服务器 CSS,浏览器会先解析远程 url(...) 资源,异步 patch 会来不及拦截 */
async function addHeadLink(href) {
if (!href) return
if (isArchivedCdnUrl(href)) return
- if (href.startsWith('http://dcloud-static01.faststatics.com/')) return
+ if (/^https?:\/\/[^/]*faststatics\.com\//i.test(href)) return
if (href.endsWith('.ico') || href.includes('favicon.ico')) return
const finalHref = normalizeAssetPath(href)
if (!finalHref) return
@@ -537,7 +649,7 @@ function ensureHomeHeroBackground() {
const style = window.getComputedStyle(heroRoot)
const hasBgImage = style.backgroundImage && style.backgroundImage !== 'none'
if (hasBgImage) return
- heroRoot.style.backgroundImage = `url(${publicAsset('assets/80d22e15-8cb2-4daf-a6b6-cd26f3c729ee-1.jpg')})`
+ heroRoot.style.backgroundImage = `url("${publicAsset('assets/no-img.svg')}")`
heroRoot.style.backgroundRepeat = 'no-repeat'
heroRoot.style.backgroundPosition = 'bottom center'
heroRoot.style.backgroundSize = '100% 100%'
@@ -968,6 +1080,7 @@ function setupInternalNavigationInterceptor() {
if (!rawHref || rawHref.startsWith('javascript:') || rawHref.startsWith('mailto:') || rawHref.startsWith('tel:')) {
return
}
+ // 运行时已将外链 href 清理为 javascript:;,这里保留映射逻辑处理本地站内链接
const hrefPathPattern =
/^(\/?(?:About\.html|Quality\.html|History\.html|mendian\.html|join\.html|contact\.html)|\/?product\/.+|\/?news\/.+|\/?clture\/.+|\/)$/i
@@ -1003,6 +1116,32 @@ function setupInternalNavigationInterceptor() {
cleanupFns.push(() => document.removeEventListener('click', onDocumentClick, true))
}
+/**
+ * 兜底修复:批量清链后,部分归档菜单链接被置为 javascript:;
+ * 按菜单文案恢复为本地 SPA 跳转,确保“店面展示/发展历程/品质技术”等可点击。
+ */
+function restoreArchivedMenuLinks() {
+ const rules = [
+ { keyword: '公司简介', href: spaHref('page=about') },
+ { keyword: '资质荣誉', href: spaHref('page=about#c_static_001_P_4578-16941414442160') },
+ { keyword: '品质技术', href: spaHref('page=quality') },
+ { keyword: '发展历程', href: spaHref('page=history') },
+ { keyword: '店面展示', href: spaHref('page=store') }
+ ]
+
+ const anchors = Array.from(document.querySelectorAll('a[href]'))
+ anchors.forEach((a) => {
+ const raw = String(a.getAttribute('href') || '').trim().toLowerCase()
+ if (!(raw === 'javascript:;' || raw === 'javascript:void(0)' || raw === '#')) return
+ const txt = (a.textContent || '').replace(/\s+/g, '')
+ if (!txt) return
+ const rule = rules.find((r) => txt.includes(r.keyword))
+ if (!rule) return
+ a.setAttribute('href', rule.href)
+ if (a.getAttribute('target') === '_blank') a.setAttribute('target', '_self')
+ })
+}
+
function mapCdnUrlToLocalAsset(abs) {
const filename = abs.split('/').pop()?.split('?')[0] || ''
if (!filename) return abs
@@ -1057,8 +1196,17 @@ async function patchLinkedStylesheetsArchiverCdn() {
}
async function bootstrapLegacyPage() {
+ const runId = ++bootstrapRunId
+ const isStale = () => runId !== bootstrapRunId
console.log('[SPA] bootstrapLegacyPage start, key:', currentPageKey.value)
pageReady.value = false
+ document.title = '华阳网站'
+ if (showOfflinePage.value) {
+ document.title = '服务暂不可用'
+ pageHtml.value = ''
+ pageReady.value = true
+ return
+ }
if (isAdminPage.value) {
document.title = '管理端接口联调'
pageHtml.value = ''
@@ -1067,20 +1215,27 @@ async function bootstrapLegacyPage() {
}
try {
+ if (isStale()) return
const pageConfig = pageConfigs[currentPageKey.value] || pageConfigs.home
console.log('[SPA] pageConfig resolved:', currentPageKey.value)
- document.title = pageConfig.title
bodyClasses.forEach((item) => document.body.classList.add(item))
document.body.setAttribute('data-pageid', pageConfig.pageId)
document.body.setAttribute('data-pagekey', currentPageKey.value)
+ if (currentPageKey.value === 'store') {
+ document.body.classList.add(STORE_HYDRATING_CLASS)
+ } else {
+ document.body.classList.remove(STORE_HYDRATING_CLASS)
+ }
let normalizedBodyHtml = pageConfig.bodyRaw
console.log('[SPA] rewritng HTML asset paths...')
const htmlWithNewAssetPath = rewriteHtmlAssetPath(normalizedBodyHtml)
console.log('[SPA] rewritng internal links...')
const htmlWithLocalLinks = rewriteInternalLinks(htmlWithNewAssetPath)
+ const sanitizedHtml = stripExternalHttpHttpsUrls(htmlWithLocalLinks)
await addBodyLinksFromContent(htmlWithNewAssetPath)
- pageHtml.value = htmlWithLocalLinks
+ if (isStale()) return
+ pageHtml.value = sanitizedHtml
console.log('[SPA] pageHtml set')
await nextTick()
sanitizeLegacyDomState()
@@ -1089,8 +1244,10 @@ async function bootstrapLegacyPage() {
const [runtimeConfigScript, ...pageInitScripts] = blocks
await Promise.all((pageConfig.assets.links || []).map((href) => addHeadLink(href)))
+ if (isStale()) return
await patchLinkedStylesheetsArchiverCdn()
+ if (isStale()) return
ensureHomeHeroBackground()
const queryParams = new URLSearchParams(window.location.search)
@@ -1185,6 +1342,8 @@ async function bootstrapLegacyPage() {
revealAboutIntroAndHonorScrollLayouts()
await injectStoreLocationImagePanel()
bindStoreMapLocationListUi()
+ if (isStale()) return
+ document.body.classList.remove(STORE_HYDRATING_CLASS)
}
if (currentPageKey.value === 'news') {
@@ -1233,6 +1392,7 @@ async function bootstrapLegacyPage() {
}
setupNavigationFallback()
+ restoreArchivedMenuLinks()
setupLegacyLazyImageFallback()
setupSwiperFallback()
window.setupSwiperFallback = setupSwiperFallback
@@ -1248,15 +1408,13 @@ async function bootstrapLegacyPage() {
await injectSiteGlobalConfig()
await injectNavigation('main')
await injectNavigation('footer')
- injectLogo()
+ await injectLogo()
await injectFooterCopyright()
// 导航替换后需要重新绑定事件
setupNavigationFallback()
}
- if (currentPageKey.value === 'history') {
- injectAboutCompanyTimeline()
- } else if (currentPageKey.value === 'product') {
+ if (currentPageKey.value === 'product') {
// 暴露产品API到window供内联脚本使用
window.__haihoProductApi = {
fetchProductCategoryPublic,
@@ -1328,6 +1486,11 @@ async function bootstrapLegacyPage() {
await injectLanguageSwitcher()
await applyTranslations(currentLang.value)
} finally {
+ if (isStale()) return
+ if (currentPageKey.value !== 'store') {
+ document.body.classList.remove(STORE_HYDRATING_CLASS)
+ }
+ await nextTick()
pageReady.value = true
}
}
@@ -1442,11 +1605,12 @@ function scrollToHash() {
}
onMounted(async () => {
- bootstrapLegacyPage()
+ await checkBackendHealthOnStartup()
+ await bootstrapLegacyPage()
- const onPopState = () => {
+ const onPopState = async () => {
currentKey.value = resolvePageKey()
- bootstrapLegacyPage()
+ await bootstrapLegacyPage()
}
window.addEventListener('popstate', onPopState)
cleanupFns.push(() => window.removeEventListener('popstate', onPopState))
@@ -1460,6 +1624,7 @@ onMounted(async () => {
cleanupFns.push(() => window.removeEventListener('hashchange', onHashChange))
const onLangChange = async () => {
+ if (showOfflinePage.value) return
// 语言切换器内已执行 applyTranslations;此处同步首页接口数据(轮播/特色/推荐/关于块)
if (currentKey.value === 'home') {
await injectHomeContent()
@@ -1508,10 +1673,155 @@ function bindGlobalSearchTrigger() {
-
+
+
+
+
+
404错误!
+
找不到网页!
+
对不起,当前服务暂不可用。请先启动后端服务,再刷新或返回首页。
+
+
+
+
+
+
+
+
+
diff --git a/frontend/src/api/companyInfo.js b/frontend/src/api/companyInfo.js
index eff9ee5..a5609d7 100644
--- a/frontend/src/api/companyInfo.js
+++ b/frontend/src/api/companyInfo.js
@@ -6,6 +6,26 @@ import { currentLang } from './language'
import { fetchSiteConfigPublic } from './siteConfig'
const API_BASE = import.meta.env.VITE_SITE_API_BASE || '/site'
+const LOCAL_HOST_SET = new Set(['localhost', '127.0.0.1', '0.0.0.0', '[::1]'])
+const FORCE_IMAGE_CACHE_BUSTER =
+ String(import.meta.env.VITE_FORCE_IMAGE_CACHE_BUSTER ?? 'true').toLowerCase() !== 'false'
+const PROFILE_UPLOAD_CACHE_BUSTER_VALUE = String(
+ import.meta.env.VITE_IMAGE_CACHE_BUSTER || Date.now().toString(36)
+)
+const PROFILE_UPLOAD_CACHE_BUSTER = `cb=${encodeURIComponent(PROFILE_UPLOAD_CACHE_BUSTER_VALUE)}`
+
+function shouldBypassCache() {
+ if (typeof window === 'undefined') return false
+ if (FORCE_IMAGE_CACHE_BUSTER) return true
+ return LOCAL_HOST_SET.has(String(window.location.hostname || '').toLowerCase())
+}
+
+function appendProfileUploadCacheBuster(input) {
+ if (!input || !shouldBypassCache()) return input
+ if (!/\/profile\/upload\//i.test(input)) return input
+ if (/[?&]cb=/.test(input)) return input
+ return input.includes('?') ? `${input}&${PROFILE_UPLOAD_CACHE_BUSTER}` : `${input}?${PROFILE_UPLOAD_CACHE_BUSTER}`
+}
/** 与 App.vue `pageConfigs` 一致:公司简介 DOM 调整、发展历程页勿注入 about_intro */
const ABOUT_SPA_PAGE_ID = '0f314d44-bcb7-4dea-b818-1abd55ce0152'
@@ -47,12 +67,12 @@ export function resolveImageUrl(url) {
u.pathname.startsWith('/resource') ||
u.pathname.startsWith('/assets'))
) {
- return pathOnly
+ return appendProfileUploadCacheBuster(pathOnly)
}
} catch {
/* ignore */
}
- return first
+ return appendProfileUploadCacheBuster(first)
}
let path = first.startsWith('/') ? first : `/${first}`
@@ -66,12 +86,12 @@ export function resolveImageUrl(url) {
path.startsWith('/images/') ||
path.startsWith('/resource/')
) {
- return path
+ return appendProfileUploadCacheBuster(path)
}
if (path.startsWith('/')) {
- return path
+ return appendProfileUploadCacheBuster(path)
}
- return first
+ return appendProfileUploadCacheBuster(first)
}
/**
@@ -719,8 +739,15 @@ function buildStoreMapLocationRowHtml(store, isFirst) {
export async function injectStoreMapLocationList() {
const itemsRoot = document.getElementById('items')
if (!itemsRoot) return
+ // 先清空归档静态列表,避免出现“先旧后新”或接口失败时回退旧资源。
+ itemsRoot.innerHTML = ''
const data = await fetchCompanyStoresMapLocationsPublic()
- if (!data?.length) return
+ if (!data?.length) {
+ itemsRoot.dataset.huayangMapListFromApi = '0'
+ itemsRoot.innerHTML =
+ '
'
+ return
+ }
const sorted = [...data].sort((a, b) => {
const ao = Number(a.sortOrder ?? a.sort_order ?? 0)
const bo = Number(b.sortOrder ?? b.sort_order ?? 0)
diff --git a/frontend/src/api/contact.js b/frontend/src/api/contact.js
index 6ba915c..862c810 100644
--- a/frontend/src/api/contact.js
+++ b/frontend/src/api/contact.js
@@ -3,13 +3,24 @@
*/
const API_BASE = import.meta.env.VITE_SITE_API_BASE || '/site'
+const LOCAL_HOST_SET = new Set(['localhost', '127.0.0.1', '0.0.0.0', '[::1]'])
+const PROFILE_UPLOAD_CACHE_BUSTER = `cb=${Date.now().toString(36)}`
+
+function appendProfileUploadCacheBuster(input) {
+ if (!input || typeof window === 'undefined') return input
+ const h = String(window.location.hostname || '').toLowerCase()
+ if (!LOCAL_HOST_SET.has(h)) return input
+ if (!/\/profile\/upload\//i.test(input)) return input
+ if (/[?&]cb=/.test(input)) return input
+ return input.includes('?') ? `${input}&${PROFILE_UPLOAD_CACHE_BUSTER}` : `${input}?${PROFILE_UPLOAD_CACHE_BUSTER}`
+}
function resolveImageUrl(raw) {
const value = raw == null ? '' : String(raw).trim()
if (!value) return ''
- if (/^https?:\/\//i.test(value)) return value
- if (value.startsWith('/')) return value
- return `/${value}`
+ if (/^https?:\/\//i.test(value)) return appendProfileUploadCacheBuster(value)
+ if (value.startsWith('/')) return appendProfileUploadCacheBuster(value)
+ return appendProfileUploadCacheBuster(`/${value}`)
}
async function fetchSiteConfigPublic() {
diff --git a/frontend/src/api/fixedSection.js b/frontend/src/api/fixedSection.js
index 6c45478..25ede7c 100644
--- a/frontend/src/api/fixedSection.js
+++ b/frontend/src/api/fixedSection.js
@@ -59,6 +59,23 @@ function bindImageFallback(img, url) {
}
}
+function ensureCardImage(node, wrapperSelector, className) {
+ const wrap = node.querySelector(wrapperSelector)
+ if (!wrap) return null
+ let img = wrap.querySelector('img')
+ if (!img) {
+ img = document.createElement('img')
+ img.alt = '华阳食品'
+ img.title = '华阳食品'
+ img.setAttribute('la', 'la')
+ img.setAttribute('needthumb', 'true')
+ if (className) img.className = className
+ wrap.innerHTML = ''
+ wrap.appendChild(img)
+ }
+ return img
+}
+
export async function fetchFixedSection(code) {
try {
const res = await fetch(`${API_BASE}/fixedSection/code/${code}`, { cache: 'no-store' })
@@ -200,11 +217,14 @@ function injectSevenFreshIndustryList(listContainer, items) {
const sub = node.querySelector('.e_text-10')
if (sub) sub.textContent = item.itemDesc || ''
- const mainImg = node.querySelector('.e_image-6 img') || node.querySelector('img')
+ const mainImg =
+ ensureCardImage(node, '.e_image-6', '') ||
+ node.querySelector('.e_image-6 img') ||
+ node.querySelector('img')
const imgUrl = firstImageUrl(item.itemImage)
if (mainImg && imgUrl) bindImageFallback(mainImg, resolveImageUrl(imgUrl))
- const iconImg = node.querySelector('.e_image-17 img')
+ const iconImg = ensureCardImage(node, '.e_image-17', '') || node.querySelector('.e_image-17 img')
const iconUrl = firstImageUrl(item.itemIcon)
if (iconImg && iconUrl) bindImageFallback(iconImg, resolveImageUrl(iconUrl))
diff --git a/frontend/src/api/home.js b/frontend/src/api/home.js
index f63911a..70b19f3 100644
--- a/frontend/src/api/home.js
+++ b/frontend/src/api/home.js
@@ -1,5 +1,6 @@
import { resolveImageUrl } from '../utils/asset'
import { fetchFixedSection, injectAllFixedSections } from './fixedSection'
+import { fetchProductPublic } from './product'
import { currentLang } from './language'
const API_BASE = import.meta.env.VITE_SITE_API_BASE || '/site'
@@ -49,6 +50,114 @@ function bindImageWithFallback(img, candidates) {
}
}
+function ensureHomePrivacySkeletonStyle() {
+ const styleId = 'hy-home-privacy-skeleton-style'
+ if (document.getElementById(styleId)) return
+ const style = document.createElement('style')
+ style.id = styleId
+ style.textContent = `
+.hy-privacy-skeleton-line {
+ height: 12px;
+ border-radius: 6px;
+ background: linear-gradient(90deg, #eef2f7 25%, #f7f9fc 50%, #eef2f7 75%);
+ background-size: 200% 100%;
+ animation: hyPrivacyShimmer 1.6s linear infinite;
+ margin: 8px 0;
+}
+.hy-privacy-skeleton-img {
+ border-radius: 8px;
+ background: linear-gradient(90deg, #eef2f7 25%, #f7f9fc 50%, #eef2f7 75%);
+ background-size: 200% 100%;
+ animation: hyPrivacyShimmer 1.6s linear infinite;
+}
+.hy-privacy-mask-text {
+ color: #94a3b8 !important;
+}
+@keyframes hyPrivacyShimmer {
+ from { background-position: 200% 0; }
+ to { background-position: -200% 0; }
+}
+`
+ document.head.appendChild(style)
+}
+
+function applyPrivacySkeletonFallback() {
+ ensureHomePrivacySkeletonStyle()
+
+ // 关于模块正文(原静态文案)统一替换为骨架,避免暴露旧站文本
+ const aboutRichText = document.querySelector('.e_richText-67')
+ if (aboutRichText) {
+ aboutRichText.innerHTML = `
+
+
+
+
+
+ `
+ }
+
+ // 关于模块四宫格:保留卡片结构,替换数字/文案/图片
+ const featureCards = document.querySelectorAll('.e_loop-39 .p_list .p_loopitem')
+ featureCards.forEach((card) => {
+ const numEl = card.querySelector('.p_num')
+ if (numEl) numEl.textContent = '--'
+ const plusEl = card.querySelector('.p_plus')
+ if (plusEl) plusEl.textContent = ''
+ const titleEl = card.querySelector('.e_text-41')
+ if (titleEl) {
+ titleEl.textContent = '内容建设中'
+ titleEl.classList.add('hy-privacy-mask-text')
+ }
+ const imgWrap = card.querySelector('.e_image-42')
+ if (imgWrap) {
+ imgWrap.innerHTML = ''
+ }
+ })
+
+ // 新闻区:后端不可用时用中性提示替换列表项,维持列表节奏
+ const newsContainer = document.querySelector('.home-news-container .p_list, .e_loop-6 .p_list, .e_loop-16 .p_list')
+ if (newsContainer) {
+ newsContainer.innerHTML = `
+
+
+
+ `
+ }
+
+ // 七道鲜矩阵(section4)由 fixedSection 独立注入,fallback 阶段不要改写其图片 DOM,
+ // 否则后续 clone 模板时会继承骨架占位,导致图片无法恢复。
+ const industryCards = document.querySelectorAll('.industry-list .p_loopitem1, .industry-list .p_loopitem')
+ industryCards.forEach((card) => {
+ const titleEl = card.querySelector('.e_text-9')
+ if (titleEl) {
+ titleEl.textContent = '—'
+ titleEl.classList.add('hy-privacy-mask-text')
+ }
+ const descEl = card.querySelector('.e_text-10')
+ if (descEl) {
+ descEl.textContent = '内容建设中'
+ descEl.classList.add('hy-privacy-mask-text')
+ }
+ card.querySelectorAll('a').forEach((link) => {
+ link.removeAttribute('href')
+ link.setAttribute('aria-disabled', 'true')
+ link.style.pointerEvents = 'none'
+ })
+ })
+
+ // 通用兜底:任何残留的旧站图片链接全部替换为空白占位,防止漏网
+ document.querySelectorAll('img').forEach((img) => {
+ const src = String(img.getAttribute('src') || img.src || '')
+ if (src.includes('烟台华阳食品有限公司') || src.includes('haihofoods.com')) {
+ img.setAttribute(
+ 'src',
+ 'data:image/gif;base64,R0lGODlhAQABAAAAACwAAAAAAQABAAA='
+ )
+ img.setAttribute('alt', '内容建设中')
+ }
+ })
+}
+
export async function fetchHomeDataPublic() {
try {
const res = await fetch(homePublicUrl(), { cache: 'no-store' })
@@ -64,6 +173,23 @@ export async function fetchHomeDataPublic() {
}
}
+function buildHomeProductCardHtml(product, iconChat, iconLink, contactHref) {
+ const imgUrl = firstProductImageUrl(product.productImages)
+ const name = escapeHtml(product.productName)
+ const detailHref = `?page=product&productId=${product.productId}`
+ const imgHtml = imgUrl
+ ? `
`
+ : ``
+ return `
+ ${imgHtml}
+ ${name}
+
+`
+}
+
function escapeForCssString(u) {
return String(u || '')
.replace(/\\/g, '\\\\')
@@ -141,8 +267,17 @@ async function tryApplyHomeNewsBackgroundOverride() {
export async function injectHomeContent() {
const data = await fetchHomeDataPublic()
+ let productFallbackList = []
if (!data) {
- console.warn('[injectHomeContent] /site/home/public 无数据或请求失败,跳过轮播/特色等动态块;固定板块仍尝试注入。')
+ console.warn('[injectHomeContent] /site/home/public 无数据或请求失败,首页将不展示动态产品。')
+ applyPrivacySkeletonFallback()
+ try {
+ // 兜底:home/public 异常时,产品展示仍从产品公开接口拉取,避免图片区整块空白。
+ productFallbackList = await fetchProductPublic()
+ } catch (error) {
+ console.warn('[injectHomeContent] product/public fallback failed:', error)
+ productFallbackList = []
+ }
} else {
console.log('Home data fetched:', data)
}
@@ -252,13 +387,9 @@ export async function injectHomeContent() {
}
}
- if (!data) {
- return
- }
-
// 2. 特色模块注入 (e_loop-39)
const featureListContainer = document.querySelector('.e_loop-39 .p_list')
- if (featureListContainer && data.features && data.features.length > 0) {
+ if (data && featureListContainer && data.features && data.features.length > 0) {
const originalItems = Array.from(featureListContainer.querySelectorAll('.p_loopitem'))
featureListContainer.innerHTML = ''
@@ -275,35 +406,26 @@ export async function injectHomeContent() {
}
// 3. 首页产品 (#home-product-grid) — 仅 div + CSS:最多 4 条,双行轨道 translateX 向左无缝循环(无 Swiper、无轮播控件)
- const products = data.products || []
+ const products = Array.isArray(data?.products) && data.products.length > 0 ? data.products : productFallbackList
const productGridHost = document.querySelector('#home-product-grid')
+ // 归档静态产品列表(e_loop-20)始终隐藏,避免后端不可用时显示旧站内容
+ const legacyProductSection = document.querySelector('#c_static_001-1679768653128 .e_loop-20')
+ if (legacyProductSection) {
+ legacyProductSection.style.display = 'none'
+ legacyProductSection.setAttribute('aria-hidden', 'true')
+ }
const contactHref = '?page=contact#c_static_001-1669701780184'
const iconChat =
''
const iconLink =
''
- function homeProductCardHtml(product) {
- const imgUrl = firstProductImageUrl(product.productImages)
- const name = escapeHtml(product.productName)
- const detailHref = `?page=product&productId=${product.productId}`
- const imgHtml = imgUrl
- ? `
`
- : ``
- return `
- ${imgHtml}
- ${name}
-
-`
- }
-
if (productGridHost) {
const topProducts = products.slice(0, 4)
if (topProducts.length > 0) {
- const cardsHtml = topProducts.map(homeProductCardHtml).join('')
+ const cardsHtml = topProducts
+ .map((product) => buildHomeProductCardHtml(product, iconChat, iconLink, contactHref))
+ .join('')
const row = `${cardsHtml}
`
productGridHost.innerHTML = `