From b886a89a1473be5c8383a4dbcf6f0819972f3753 Mon Sep 17 00:00:00 2001 From: muhammadvadud Date: Tue, 4 Nov 2025 03:41:54 +0500 Subject: [PATCH 01/14] Docker qo'shildi --- Dockerfile | 23 +++++++++++++++++++++++ docker-compose.yml | 12 ++++++++++++ stack.yaml | 13 +++++++++++++ 3 files changed, 48 insertions(+) create mode 100644 Dockerfile create mode 100644 docker-compose.yml create mode 100644 stack.yaml diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..65dd6ce --- /dev/null +++ b/Dockerfile @@ -0,0 +1,23 @@ +FROM node:20-alpine AS builder + +WORKDIR /app + +COPY package*.json ./ +RUN npm install --legacy-peer-deps + +COPY . . +RUN npm run build + +FROM node:20-alpine + +WORKDIR /app +ENV NODE_ENV=production +ENV PORT=3000 + +COPY --from=builder /app/package*.json ./ +COPY --from=builder /app/.next ./.next +COPY --from=builder /app/public ./public +COPY --from=builder /app/node_modules ./node_modules + +EXPOSE 5263 +CMD ["npm", "start"] diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..cd2aad4 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,12 @@ +version: "3.9" + +services: + frontend: + image: muhammadvadud/simple-travel-front-admin:latest + build: . + ports: + - "5263:3000" + deploy: + replicas: 2 + restart_policy: + condition: on-failure diff --git a/stack.yaml b/stack.yaml new file mode 100644 index 0000000..f28df13 --- /dev/null +++ b/stack.yaml @@ -0,0 +1,13 @@ +version: "3.9" + +services: + simple-travel-frontend: + image: muhammadvadud/simple-travel-front-admin:latest + ports: + - "5263:3000" + env_file: + - .env + deploy: + replicas: 2 + restart_policy: + condition: on-failure From fb2d6e012ddff75314499db88069309e823c338a Mon Sep 17 00:00:00 2001 From: muhammadvadud Date: Tue, 4 Nov 2025 03:45:53 +0500 Subject: [PATCH 02/14] Fix typo --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 65dd6ce..155eb78 100644 --- a/Dockerfile +++ b/Dockerfile @@ -19,5 +19,5 @@ COPY --from=builder /app/.next ./.next COPY --from=builder /app/public ./public COPY --from=builder /app/node_modules ./node_modules -EXPOSE 5263 +EXPOSE 3000 CMD ["npm", "start"] From e3e81e2ff917e4d3b72a09b00c4763bf0923d9c6 Mon Sep 17 00:00:00 2001 From: muhammadvadud Date: Tue, 4 Nov 2025 03:51:57 +0500 Subject: [PATCH 03/14] Fix typo --- Dockerfile | 16 +++------------- stack.yaml | 4 +--- 2 files changed, 4 insertions(+), 16 deletions(-) diff --git a/Dockerfile b/Dockerfile index 155eb78..f08a1a5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,23 +1,13 @@ FROM node:20-alpine AS builder - WORKDIR /app - COPY package*.json ./ RUN npm install --legacy-peer-deps - COPY . . RUN npm run build FROM node:20-alpine - WORKDIR /app -ENV NODE_ENV=production -ENV PORT=3000 - -COPY --from=builder /app/package*.json ./ -COPY --from=builder /app/.next ./.next -COPY --from=builder /app/public ./public -COPY --from=builder /app/node_modules ./node_modules - +COPY --from=builder /app/dist ./dist +RUN npm install -g serve EXPOSE 3000 -CMD ["npm", "start"] +CMD ["serve", "-s", "dist"] diff --git a/stack.yaml b/stack.yaml index f28df13..818d468 100644 --- a/stack.yaml +++ b/stack.yaml @@ -1,12 +1,10 @@ version: "3.9" services: - simple-travel-frontend: + simple-travel-front-admin: image: muhammadvadud/simple-travel-front-admin:latest ports: - "5263:3000" - env_file: - - .env deploy: replicas: 2 restart_policy: From 06c9ea171b9c9cf8fac14e101d1c026498843cc6 Mon Sep 17 00:00:00 2001 From: muhammadvadud Date: Tue, 4 Nov 2025 16:05:36 +0500 Subject: [PATCH 04/14] Fix typo --- .dockerignore | 12 ++++++++++++ .env | 12 +++++++++++- .env.production | 11 +++++++++++ Dockerfile | 29 ++++++++++++++++++----------- docker-compose.yml | 28 ++++++++++++++++++---------- nginx/nginx.conf | 33 +++++++++++++++++++++++++++++++++ 6 files changed, 103 insertions(+), 22 deletions(-) create mode 100644 .dockerignore create mode 100644 .env.production create mode 100644 nginx/nginx.conf diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..a8bc5b0 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,12 @@ +node_modules +dist +.git +.gitignore +.env.local +npm-debug.log* +yarn-debug.log* +yarn-error.log* +.DS_Store +*.md +.vscode +.idea \ No newline at end of file diff --git a/.env b/.env index 5dea892..d1bc400 100644 --- a/.env +++ b/.env @@ -1 +1,11 @@ -VITE_API_URL=https://simple-travel.felixits.uz/api/v1/ \ No newline at end of file +# API Configuration +VITE_API_URL=https://simple-travel.felixits.uz/api/v1/ +VITE_API_TIMEOUT=30000 + +# App Configuration +VITE_APP_NAME=simple-travel-admin +VITE_APP_VERSION=1.0.0 + +# Environment +NODE_ENV=production + diff --git a/.env.production b/.env.production new file mode 100644 index 0000000..d1bc400 --- /dev/null +++ b/.env.production @@ -0,0 +1,11 @@ +# API Configuration +VITE_API_URL=https://simple-travel.felixits.uz/api/v1/ +VITE_API_TIMEOUT=30000 + +# App Configuration +VITE_APP_NAME=simple-travel-admin +VITE_APP_VERSION=1.0.0 + +# Environment +NODE_ENV=production + diff --git a/Dockerfile b/Dockerfile index f08a1a5..26ad7d6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,13 +1,20 @@ -FROM node:20-alpine AS builder -WORKDIR /app -COPY package*.json ./ -RUN npm install --legacy-peer-deps -COPY . . -RUN npm run build - +# Build stage FROM node:20-alpine + WORKDIR /app -COPY --from=builder /app/dist ./dist -RUN npm install -g serve -EXPOSE 3000 -CMD ["serve", "-s", "dist"] + +# Copy dependencies +COPY package.json package-lock.json* ./ + +RUN npm ci --legacy-peer-deps + +# Copy all source +COPY . . + +# Set production env (agar .env.production bo‘lsa ishlaydi) +ENV NODE_ENV=production + +# Build for production +RUN npm run build +ENTRYPOINT npm run preview + diff --git a/docker-compose.yml b/docker-compose.yml index cd2aad4..f9c4cb5 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,12 +1,20 @@ -version: "3.9" - services: - frontend: - image: muhammadvadud/simple-travel-front-admin:latest - build: . + simple-travel-admin: + build: + context: . + dockerfile: Dockerfile + args: + - VITE_API_URL=${VITE_API_URL} + - VITE_APP_NAME=${VITE_APP_NAME} + container_name: simple-travel-admin ports: - - "5263:3000" - deploy: - replicas: 2 - restart_policy: - condition: on-failure + - "5263:4173" + env_file: + - .env.production + restart: unless-stopped + networks: + - network + +networks: + network: + driver: bridge diff --git a/nginx/nginx.conf b/nginx/nginx.conf new file mode 100644 index 0000000..5fe68ed --- /dev/null +++ b/nginx/nginx.conf @@ -0,0 +1,33 @@ +server { + listen 80; + server_name localhost; + root /usr/share/nginx/html; + index index.html; + + # Gzip compression + gzip on; + gzip_vary on; + gzip_min_length 1024; + gzip_types text/plain text/css text/xml text/javascript application/x-javascript application/xml+rss application/javascript application/json; + + # Security headers + add_header X-Frame-Options "SAMEORIGIN" always; + add_header X-Content-Type-Options "nosniff" always; + add_header X-XSS-Protection "1; mode=block" always; + + # React Router support + location / { + try_files $uri $uri/ /index.html; + } + + # Cache static assets + location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|eot)$ { + expires 1y; + add_header Cache-Control "public, immutable"; + } + + # Don't cache index.html + location = /index.html { + add_header Cache-Control "no-cache, no-store, must-revalidate"; + } +} \ No newline at end of file From 033692754ca5c04db10d0c06842b67af980bb23f Mon Sep 17 00:00:00 2001 From: muhammadvadud Date: Tue, 4 Nov 2025 16:22:01 +0500 Subject: [PATCH 05/14] Fix typo --- vite.config.ts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/vite.config.ts b/vite.config.ts index 97895d8..2d42a73 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -18,7 +18,12 @@ export default defineConfig({ server: { host: true, port: 5173, + }, preview: { + host: true, // Production (vite preview) uchun + port: 3000, + allowedHosts: ["admin.simpletravel.uz"], // ✅ bu yer muhim }, + build: { outDir: "dist", // Vercel build chiqishini shu papkadan oladi sourcemap: false, // Agar kerak bo‘lmasa o‘chirib qo‘ying From 5374628b85f8046ae4138367d3179f6855bb0c84 Mon Sep 17 00:00:00 2001 From: muhammadvadud Date: Tue, 4 Nov 2025 16:25:40 +0500 Subject: [PATCH 06/14] Fix typo --- vite.config.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vite.config.ts b/vite.config.ts index 2d42a73..ceca0a8 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -20,7 +20,7 @@ export default defineConfig({ port: 5173, }, preview: { host: true, // Production (vite preview) uchun - port: 3000, + port: 5263, allowedHosts: ["admin.simpletravel.uz"], // ✅ bu yer muhim }, From 83a29a232f8fdd85b7082b66582593c1c8b0edd9 Mon Sep 17 00:00:00 2001 From: muhammadvudud Date: Tue, 4 Nov 2025 14:37:39 +0300 Subject: [PATCH 07/14] Fix Typo Server --- .env.production | 1 + docker-compose.yml | 2 +- vite.config.ts | 3 ++- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.env.production b/.env.production index d1bc400..985148c 100644 --- a/.env.production +++ b/.env.production @@ -9,3 +9,4 @@ VITE_APP_VERSION=1.0.0 # Environment NODE_ENV=production + diff --git a/docker-compose.yml b/docker-compose.yml index f9c4cb5..ad84c84 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -8,7 +8,7 @@ services: - VITE_APP_NAME=${VITE_APP_NAME} container_name: simple-travel-admin ports: - - "5263:4173" + - "5263:5263" env_file: - .env.production restart: unless-stopped diff --git a/vite.config.ts b/vite.config.ts index ceca0a8..00aa6fc 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -18,7 +18,8 @@ export default defineConfig({ server: { host: true, port: 5173, - }, preview: { + }, + preview: { host: true, // Production (vite preview) uchun port: 5263, allowedHosts: ["admin.simpletravel.uz"], // ✅ bu yer muhim From 2d96eab3d7f25d2d733ce532889613c3d713ea20 Mon Sep 17 00:00:00 2001 From: Samandar Turgunboyev Date: Tue, 4 Nov 2025 18:10:37 +0500 Subject: [PATCH 08/14] post bug fix --- .env | 2 +- src/pages/news/lib/data.ts | 6 +- src/pages/news/lib/form.ts | 22 ++- src/pages/news/lib/type.ts | 8 +- src/pages/news/ui/AddNews.tsx | 21 +- src/pages/news/ui/News.tsx | 101 ++++++++-- src/pages/news/ui/StepOne.tsx | 168 +++++++++------- src/pages/news/ui/StepTwo.tsx | 179 ++++++++++-------- .../config/i18n/locales/ru/translation.json | 5 +- .../config/i18n/locales/uz/translation.json | 5 +- 10 files changed, 325 insertions(+), 192 deletions(-) diff --git a/.env b/.env index 5dea892..37f214b 100644 --- a/.env +++ b/.env @@ -1 +1 @@ -VITE_API_URL=https://simple-travel.felixits.uz/api/v1/ \ No newline at end of file +VITE_API_URL=https://api.simpletravel.uz/api/v1/ \ No newline at end of file diff --git a/src/pages/news/lib/data.ts b/src/pages/news/lib/data.ts index 4fb5d27..d2f9b22 100644 --- a/src/pages/news/lib/data.ts +++ b/src/pages/news/lib/data.ts @@ -6,7 +6,7 @@ interface NewsData { desc: string; title_ru: string; desc_ru: string; - category: string; + category: number | null; banner: File | undefined | string; } @@ -20,7 +20,7 @@ export const useNewsStore = create((set) => ({ stepOneData: { title: "", desc: "", - category: "", + category: null, banner: undefined, desc_ru: "", title_ru: "", @@ -31,7 +31,7 @@ export const useNewsStore = create((set) => ({ stepOneData: { title: "", desc: "", - category: "", + category: null, banner: undefined, desc_ru: "", title_ru: "", diff --git a/src/pages/news/lib/form.ts b/src/pages/news/lib/form.ts index 2198ab4..2314a22 100644 --- a/src/pages/news/lib/form.ts +++ b/src/pages/news/lib/form.ts @@ -18,12 +18,13 @@ export const newsForm = z.object({ desc_ru: z.string().min(2, { message: "Kamida 2 ta belgidan iborat bo‘lishi kerak.", }), - category: z.string().min(1, { + category: z.number().min(1, { message: "Majburiy maydon", }), banner: fileSchema, }); +// zod schema ni yangilaymiz export const newsPostForm = z.object({ desc: z .string() @@ -36,17 +37,22 @@ export const newsPostForm = z.object({ sections: z .array( z.object({ - image: fileSchema, - text: z.string().min(1, { message: "Matn bo'sh bo'lmasligi kerak." }), - text_ru: z - .string() - .min(1, { message: "Ruscha matn bo'sh bo'lmasligi kerak." }), + image: z.union([z.instanceof(File), z.string()]).optional(), + text: z.string().optional(), + text_ru: z.string().optional(), }), ) - .min(1, { message: "Kamida bitta bo‘lim qo‘shing." }), + .optional(), post_tags: z - .array(z.string().min(1, { message: "Teg bo'sh bo'lmasligi kerak." })) + .array( + z.object({ + name: z.string().min(1, { message: "Teg bo'sh bo'lmasligi kerak." }), + name_ru: z + .string() + .min(1, { message: "Teg (RU) bo'sh bo'lmasligi kerak." }), + }), + ) .min(1, { message: "Kamida bitta teg kiriting." }), }); diff --git a/src/pages/news/lib/type.ts b/src/pages/news/lib/type.ts index 0ac1d0b..cf071fb 100644 --- a/src/pages/news/lib/type.ts +++ b/src/pages/news/lib/type.ts @@ -98,12 +98,8 @@ export interface NewsDetail { text_ru: string; text_uz: string; is_public: boolean; - category: { - name: string; - name_ru: string; - name_uz: string; - }; - tag: [ + category: { id: number; name: string; name_ru: string; name_uz: string }; + post_tags: [ { id: number; name: string; diff --git a/src/pages/news/ui/AddNews.tsx b/src/pages/news/ui/AddNews.tsx index b95edc2..cf656b4 100644 --- a/src/pages/news/ui/AddNews.tsx +++ b/src/pages/news/ui/AddNews.tsx @@ -4,7 +4,7 @@ import StepOne from "@/pages/news/ui/StepOne"; import StepTwo from "@/pages/news/ui/StepTwo"; import { useQuery } from "@tanstack/react-query"; -import { useMemo, useState } from "react"; +import { useEffect, useMemo, useState } from "react"; import { useTranslation } from "react-i18next"; import { useParams } from "react-router-dom"; @@ -13,7 +13,7 @@ const AddNews = () => { const isEditMode = useMemo(() => !!id, [id]); const [step, setStep] = useState(1); const { t } = useTranslation(); - const { data } = useQuery({ + const { data, refetch } = useQuery({ queryKey: ["news_detail", id], queryFn: () => getDetailNews(Number(id)), select(data) { @@ -22,6 +22,12 @@ const AddNews = () => { enabled: !!id, }); + useEffect(() => { + if (id) { + refetch(); + } + }, [id]); + return (

@@ -41,9 +47,16 @@ const AddNews = () => {

{step === 1 && ( - + + )} + {step === 2 && ( + )} - {step === 2 && } ); }; diff --git a/src/pages/news/ui/News.tsx b/src/pages/news/ui/News.tsx index 53ffab5..7185720 100644 --- a/src/pages/news/ui/News.tsx +++ b/src/pages/news/ui/News.tsx @@ -1,5 +1,5 @@ "use client"; -import { deleteNews, getAllNews } from "@/pages/news/lib/api"; +import { deleteNews, getAllNews, updateNews } from "@/pages/news/lib/api"; import { Badge } from "@/shared/ui/badge"; import { Button } from "@/shared/ui/button"; import { Card } from "@/shared/ui/card"; @@ -10,12 +10,15 @@ import { DialogHeader, DialogTitle, } from "@/shared/ui/dialog"; +import { Switch } from "@/shared/ui/switch"; import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query"; import clsx from "clsx"; import { ChevronLeft, ChevronRight, Edit, + Eye, + EyeOff, FolderOpen, Loader2, PlusCircle, @@ -41,11 +44,33 @@ const News = () => { queryFn: () => getAllNews({ page: currentPage, page_size: 10 }), }); - const { mutate, isPending } = useMutation({ + const { mutate: deleteMutate, isPending } = useMutation({ mutationFn: (id: number) => deleteNews(id), onSuccess: () => { setDeleteId(null); queryClient.refetchQueries({ queryKey: ["all_news"] }); + toast.success(t("Yangilik o'chirildi"), { + richColors: true, + position: "top-center", + }); + }, + onError: () => { + toast.error(t("Xatolik yuz berdi"), { + richColors: true, + position: "top-center", + }); + }, + }); + + const { mutate: togglePublicMutate } = useMutation({ + mutationFn: ({ id, body }: { id: number; body: FormData }) => + updateNews({ body, id }), + onSuccess: () => { + queryClient.refetchQueries({ queryKey: ["all_news"] }); + toast.success(t("Status o'zgartirildi"), { + richColors: true, + position: "top-center", + }); }, onError: () => { toast.error(t("Xatolik yuz berdi"), { @@ -57,10 +82,21 @@ const News = () => { const confirmDelete = () => { if (deleteId) { - mutate(deleteId); + deleteMutate(deleteId); } }; + const handleTogglePublic = (id: number, currentStatus: boolean) => { + const formData = new FormData(); + console.log(currentStatus); + + formData.append("is_public", String(currentStatus)); + togglePublicMutate({ + id, + body: formData, + }); + }; + if (isLoading) { return (
@@ -135,10 +171,10 @@ const News = () => { allNews?.data.data.results.map((item) => ( {/* Image */} -
+
{item.title} {
{/* Content */} -
+
{/* Title */}

{item.title} @@ -169,21 +205,47 @@ const News = () => { {item.text}

- {/* Date */} -
- {item.is_public} -
- {/* Slug */} -
- {item.tag?.map((e) => ( - - /{e.name} - - ))} + {item.tag && item.tag.length > 0 && ( +
+ {item.tag.map((e, idx) => ( + + /{e.name} + + ))} +
+ )} + + {/* Spacer to push content to bottom */} +
+ + {/* Public/Private Toggle */} +
+
+
+ {item.is_public ? ( + + ) : ( + + )} + + {t("Оmmaviy")} + +
+ + handleTogglePublic(item.id, !item.is_public) + } + className="data-[state=checked]:bg-green-600" + /> +
- {/* Actions */} + {/* Actions - at the very bottom */}
- )} + {tagFields.map((field, i) => ( +
+ ( + - + -
- + + )} + /> + ( + + + + + + + )} + /> + {tagFields.length > 1 && ( + )} - /> +
))}
- {fields.map((field, index) => ( + {/* Sections */} + {sectionFields.map((field, index) => (
- {/* Text (UZ) */} + {/* Text UZ */} - {/* Text (RU) */} + {/* Text RU */} - append({ image: undefined as any, text: "", text_ru: "" }) + appendSection({ image: undefined as any, text: "", text_ru: "" }) } className="bg-gray-700 hover:bg-gray-600" > diff --git a/src/shared/config/i18n/locales/ru/translation.json b/src/shared/config/i18n/locales/ru/translation.json index cb620e5..a3550e2 100644 --- a/src/shared/config/i18n/locales/ru/translation.json +++ b/src/shared/config/i18n/locales/ru/translation.json @@ -530,5 +530,8 @@ "Yuborish": "Отправить", "Pulni o'tkazish": "Перевод средств", "To‘lov muvaffaqiyatli amalga oshirildi!": "Оплата успешно выполнена!", - "Sizga tizimga kirishga ruxsat berilmagan": "Вам не разрешен доступ к системе." + "Sizga tizimga kirishga ruxsat berilmagan": "Вам не разрешен доступ к системе.", + "Оmmaviy": "Публичный", + "Shaxsiy": "Личный", + "Status o'zgartirildi": "Статус изменён" } diff --git a/src/shared/config/i18n/locales/uz/translation.json b/src/shared/config/i18n/locales/uz/translation.json index 211a81e..b380321 100644 --- a/src/shared/config/i18n/locales/uz/translation.json +++ b/src/shared/config/i18n/locales/uz/translation.json @@ -531,5 +531,8 @@ "Yuborish": "Yuborish", "Pulni o'tkazish": "Pulni o'tkazish", "To‘lov muvaffaqiyatli amalga oshirildi!": "To‘lov muvaffaqiyatli amalga oshirildi!", - "Sizga tizimga kirishga ruxsat berilmagan": "Sizga tizimga kirishga ruxsat berilmagan" + "Sizga tizimga kirishga ruxsat berilmagan": "Sizga tizimga kirishga ruxsat berilmagan", + "Оmmaviy": "Ommaviy", + "Shaxsiy": "Shaxsiy", + "Status o'zgartirildi": "Status o'zgartirildi" } From 26ea18c1954cfa83394f015c4840e03c3cace93a Mon Sep 17 00:00:00 2001 From: Samandar Turgunboyev Date: Tue, 4 Nov 2025 18:25:48 +0500 Subject: [PATCH 09/14] bug fix --- .env | 2 +- src/pages/news/ui/StepOne.tsx | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/.env b/.env index d1bc400..339dee2 100644 --- a/.env +++ b/.env @@ -1,5 +1,5 @@ # API Configuration -VITE_API_URL=https://simple-travel.felixits.uz/api/v1/ +VITE_API_URL=https://api.simpletravel.uz/api/v1/ VITE_API_TIMEOUT=30000 # App Configuration diff --git a/src/pages/news/ui/StepOne.tsx b/src/pages/news/ui/StepOne.tsx index 8b724b2..3a908db 100644 --- a/src/pages/news/ui/StepOne.tsx +++ b/src/pages/news/ui/StepOne.tsx @@ -60,7 +60,6 @@ interface Data { const StepOne = ({ setStep, data: detail, - id, }: { setStep: Dispatch>; isEditMode: boolean; From 17bea5b02e3100b8c8c729d6977abb344228d8ad Mon Sep 17 00:00:00 2001 From: Samandar Turgunboyev Date: Tue, 4 Nov 2025 19:08:19 +0500 Subject: [PATCH 10/14] gitignore --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 3ef37ae..f576d55 100644 --- a/.gitignore +++ b/.gitignore @@ -8,6 +8,8 @@ pnpm-debug.log* lerna-debug.log* .env +.env.production +.example.env node_modules dist From 58ed29322c93fb4b322e3153066c8085da6f5276 Mon Sep 17 00:00:00 2001 From: Samandar Turgunboyev Date: Tue, 4 Nov 2025 19:10:30 +0500 Subject: [PATCH 11/14] gitignore --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index f576d55..67e3817 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,8 @@ yarn-error.log* pnpm-debug.log* lerna-debug.log* +#env + .env .env.production .example.env From c95869e9f61649586986d41c8ccbc2fc3d7ce235 Mon Sep 17 00:00:00 2001 From: Samandar Turgunboyev Date: Tue, 4 Nov 2025 19:20:28 +0500 Subject: [PATCH 12/14] Stop tracking .env files --- .env | 11 ----------- 1 file changed, 11 deletions(-) delete mode 100644 .env diff --git a/.env b/.env deleted file mode 100644 index 339dee2..0000000 --- a/.env +++ /dev/null @@ -1,11 +0,0 @@ -# API Configuration -VITE_API_URL=https://api.simpletravel.uz/api/v1/ -VITE_API_TIMEOUT=30000 - -# App Configuration -VITE_APP_NAME=simple-travel-admin -VITE_APP_VERSION=1.0.0 - -# Environment -NODE_ENV=production - From b639468e3f725bddcecef5389afe6e800a92279c Mon Sep 17 00:00:00 2001 From: Samandar Turgunboyev Date: Tue, 4 Nov 2025 19:22:23 +0500 Subject: [PATCH 13/14] Stop tracking .env files --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 67e3817..3a113c7 100644 --- a/.gitignore +++ b/.gitignore @@ -7,7 +7,7 @@ yarn-error.log* pnpm-debug.log* lerna-debug.log* -#env +#env add gitignore .env .env.production From 5ab4b981677ade4e93e4c8841007d8cda5bc5d6e Mon Sep 17 00:00:00 2001 From: Samandar Turgunboyev Date: Tue, 4 Nov 2025 19:23:29 +0500 Subject: [PATCH 14/14] Stop tracking .env files --- .env.production | 12 ------------ .example.env | 1 - 2 files changed, 13 deletions(-) delete mode 100644 .env.production delete mode 100644 .example.env diff --git a/.env.production b/.env.production deleted file mode 100644 index 985148c..0000000 --- a/.env.production +++ /dev/null @@ -1,12 +0,0 @@ -# API Configuration -VITE_API_URL=https://simple-travel.felixits.uz/api/v1/ -VITE_API_TIMEOUT=30000 - -# App Configuration -VITE_APP_NAME=simple-travel-admin -VITE_APP_VERSION=1.0.0 - -# Environment -NODE_ENV=production - - diff --git a/.example.env b/.example.env deleted file mode 100644 index 6b9c50b..0000000 --- a/.example.env +++ /dev/null @@ -1 +0,0 @@ -VITE_API_URL=string \ No newline at end of file