chore: add waf

This commit is contained in:
2026-03-15 13:31:48 +01:00
parent 2e7340f9a6
commit 42276ca4ff
18 changed files with 164 additions and 3508 deletions
+3 -3
View File
@@ -9,8 +9,8 @@ import type {
Alert,
} from "./types";
const V2 = "http://5.181.0.112/api/v2";
const CABINE_URL = "http://5.181.0.112/api/v1/cabine";
const V2 = "https://5.181.0.112.nip.io/api/v2";
const CABINE_URL = "https://5.181.0.112.nip.io/api/v1/cabine";
// ============================================
// AUTH
@@ -622,7 +622,7 @@ export const getCommandCountByStatus = async (
// CATÉGORIES
// ============================================
const V1_PUBLIC = "http://5.181.0.112/api/v1";
const V1_PUBLIC = "https://5.181.0.112.nip.io/api/v1";
export interface Category {
id: number;
+3 -3
View File
@@ -6,8 +6,8 @@ import type {
Alert,
} from "./types";
const API = "http://5.181.0.112/api/v1/cabine";
const V2 = "http://5.181.0.112/api/v2";
const API = "https://5.181.0.112.nip.io/api/v1/cabine";
const V2 = "https://5.181.0.112.nip.io/api/v2";
// ============================================
// ITEMS
@@ -395,7 +395,7 @@ export const markCabineNotificationsRead = async (): Promise<void> => {
export const getPublicSettings = async (): Promise<PublicSettings> => {
try {
const { data } = await apiClient.get(
`http://5.181.0.112/api/v1/app-settings`,
`https://5.181.0.112.nip.io/api/v1/app-settings`,
);
return {
penalties_enabled: data.penalties_enabled ?? true,
+1 -1
View File
@@ -7,7 +7,7 @@ import type {
Alert,
} from "./types";
const API = "http://5.181.0.112/api/v1/livreur";
const API = "https://5.181.0.112.nip.io/api/v1/livreur";
// ============================================
// STATUT
+1 -1
View File
@@ -2,7 +2,7 @@ import axios from "axios";
import { getToken, getAdminToken } from "../auth/tokenStorage";
// Change this to your server IP/domain
export const API_BASE_URL = "http://5.181.0.112";
export const API_BASE_URL = "https://5.181.0.112.nip.io";
const apiClient = axios.create({
baseURL: API_BASE_URL,
@@ -37,24 +37,12 @@ import { useAlert } from "../../hooks/useAlert";
type Nav = NativeStackNavigationProp<AdminStackParamList>;
const STATUS_FILTERS = [
"all",
"pending",
"assigned",
"en_route",
"arrived",
"livre",
"approved",
"cancelled",
];
export default function OrdersScreen() {
const { colors } = useTheme();
const navigation = useNavigation<Nav>();
const [commands, setCommands] = useState<CommandResponse[]>([]);
const [loading, setLoading] = useState(true);
const [refreshing, setRefreshing] = useState(false);
const [filter, setFilter] = useState("all");
const { alert, showError, showSuccess, showConfirm, hideAlert } =
useAlert();
@@ -87,14 +75,13 @@ export default function OrdersScreen() {
const loadData = useCallback(async () => {
try {
const status = filter === "all" ? undefined : filter;
const result = await getAllCommands(status);
const result = await getAllCommands(undefined);
setCommands(result.commands);
} catch {
/* ignore */
}
setLoading(false);
}, [filter]);
}, []);
useEffect(() => {
loadData();
@@ -250,11 +237,6 @@ export default function OrdersScreen() {
() =>
StyleSheet.create({
container: { flex: 1, backgroundColor: colors.bgPrimary },
filterList: {
maxHeight: 50,
paddingHorizontal: spacing.l,
paddingVertical: spacing.s,
},
refreshRow: {
paddingHorizontal: spacing.l,
paddingBottom: spacing.s,
@@ -275,24 +257,6 @@ export default function OrdersScreen() {
color: colors.textSecondary,
fontSize: fontSize.sm,
},
filterBtn: {
paddingHorizontal: spacing.l,
paddingVertical: spacing.s,
backgroundColor: colors.bgCard,
borderRadius: borderRadius.xl,
marginRight: spacing.s,
borderWidth: 1,
borderColor: colors.border,
},
filterActive: {
backgroundColor: colors.accent,
borderColor: colors.accent,
},
filterText: {
color: colors.textSecondary,
fontSize: fontSize.sm,
},
filterTextActive: { color: colors.textWhite },
cardText: {
color: colors.textSecondary,
fontSize: fontSize.sm,
@@ -615,31 +579,6 @@ export default function OrdersScreen() {
return (
<View style={styles.container}>
<FlatList
horizontal
data={STATUS_FILTERS}
keyExtractor={(i) => i}
renderItem={({ item }) => (
<TouchableOpacity
style={[
styles.filterBtn,
filter === item && styles.filterActive,
]}
onPress={() => setFilter(item)}
>
<Text
style={[
styles.filterText,
filter === item && styles.filterTextActive,
]}
>
{item === "all" ? "Tous" : item}
</Text>
</TouchableOpacity>
)}
style={styles.filterList}
showsHorizontalScrollIndicator={false}
/>
<View style={styles.refreshRow}>
<TouchableOpacity
style={styles.refreshBtn}