Update: 2026-06-13 00:08:00
This commit is contained in:
572
bottomsheet.diff
572
bottomsheet.diff
@@ -1,572 +0,0 @@
|
|||||||
commit d8901e1a879f696e512e13d389d666baae33dc84
|
|
||||||
Author: Hamza-Ayed <hamzaayedflutter@gmail.com>
|
|
||||||
Date: Tue Jun 9 08:40:31 2026 +0300
|
|
||||||
|
|
||||||
first commit
|
|
||||||
|
|
||||||
diff --git a/siro_rider/lib/views/home/map_widget.dart/buttom_sheet_map_show.dart b/siro_rider/lib/views/home/map_widget.dart/buttom_sheet_map_show.dart
|
|
||||||
new file mode 100644
|
|
||||||
index 0000000..c3dee90
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/siro_rider/lib/views/home/map_widget.dart/buttom_sheet_map_show.dart
|
|
||||||
@@ -0,0 +1,560 @@
|
|
||||||
+import 'package:flutter/material.dart';
|
|
||||||
+import 'package:get/get.dart';
|
|
||||||
+import 'package:siro_rider/controller/payment/payment_controller.dart';
|
|
||||||
+
|
|
||||||
+import '../../../constant/style.dart';
|
|
||||||
+import '../../../controller/home/map/ride_lifecycle_controller.dart';
|
|
||||||
+
|
|
||||||
+GetBuilder<RideLifecycleController> buttomSheetMapPage() {
|
|
||||||
+ Get.put(PaymentController());
|
|
||||||
+ return GetBuilder<RideLifecycleController>(
|
|
||||||
+ builder: (controller) =>
|
|
||||||
+ controller.isBottomSheetShown && controller.rideConfirm == false
|
|
||||||
+ ? const Positioned(
|
|
||||||
+ left: 5,
|
|
||||||
+ bottom: 0,
|
|
||||||
+ right: 5,
|
|
||||||
+ child: Column(
|
|
||||||
+ // children: [
|
|
||||||
+ // Row(
|
|
||||||
+ // mainAxisAlignment: MainAxisAlignment.end,
|
|
||||||
+ // children: [
|
|
||||||
+ // double.parse(box.read(BoxName.passengerWalletTotal)) <
|
|
||||||
+ // 0 &&
|
|
||||||
+ // controller.data.isNotEmpty
|
|
||||||
+ // ? Container(
|
|
||||||
+ // decoration: AppStyle.boxDecoration
|
|
||||||
+ // .copyWith(color: AppColor.redColor),
|
|
||||||
+ // height: 50,
|
|
||||||
+ // width: Get.width * .94,
|
|
||||||
+ // child: Padding(
|
|
||||||
+ // padding:
|
|
||||||
+ // const EdgeInsets.symmetric(horizontal: 8),
|
|
||||||
+ // child: Text(
|
|
||||||
+ // 'Your trip cost is'.tr +
|
|
||||||
+ // ' ${controller.totalCostPassenger.toStringAsFixed(2)} '
|
|
||||||
+ // 'But you have a negative salary of'
|
|
||||||
+ // .tr +
|
|
||||||
+ // '${double.parse(box.read(BoxName.passengerWalletTotal)).toStringAsFixed(2)}'
|
|
||||||
+ // ' in your'
|
|
||||||
+ // .tr +
|
|
||||||
+ // ' ${AppInformation.appName}'
|
|
||||||
+ // ' wallet due to a previous trip.'
|
|
||||||
+ // .tr,
|
|
||||||
+ // style: AppStyle.subtitle,
|
|
||||||
+ // ),
|
|
||||||
+ // ))
|
|
||||||
+ // : const SizedBox(),
|
|
||||||
+ // ],
|
|
||||||
+ // ),
|
|
||||||
+ // const SizedBox(
|
|
||||||
+ // height: 5,
|
|
||||||
+ // ),
|
|
||||||
+ // AnimatedContainer(
|
|
||||||
+ // // clipBehavior: Clip.antiAliasWithSaveLayer,
|
|
||||||
+ // curve: Curves.easeInCirc,
|
|
||||||
+ // onEnd: () {
|
|
||||||
+ // controller.height = 250;
|
|
||||||
+ // },
|
|
||||||
+ // height: controller.heightBottomSheetShown,
|
|
||||||
+ // duration: const Duration(seconds: 2),
|
|
||||||
+ // child: Column(
|
|
||||||
+ // children: [
|
|
||||||
+ // controller.data.isEmpty
|
|
||||||
+ // ? const SizedBox()
|
|
||||||
+ // : Container(
|
|
||||||
+ // // width: Get.width * .9,
|
|
||||||
+ // height: 100,
|
|
||||||
+ // decoration: BoxDecoration(
|
|
||||||
+ // color: AppColor.secondaryColor,
|
|
||||||
+ // boxShadow: [
|
|
||||||
+ // const BoxShadow(
|
|
||||||
+ // color: AppColor.accentColor,
|
|
||||||
+ // offset: Offset(2, 2)),
|
|
||||||
+ // BoxShadow(
|
|
||||||
+ // color: AppColor.accentColor
|
|
||||||
+ // .withOpacity(.4),
|
|
||||||
+ // offset: const Offset(-2, -2))
|
|
||||||
+ // ],
|
|
||||||
+ // borderRadius: const BorderRadius.all(
|
|
||||||
+ // Radius.circular(15))),
|
|
||||||
+ // child: ListView.builder(
|
|
||||||
+ // scrollDirection: Axis.horizontal,
|
|
||||||
+ // itemCount: controller
|
|
||||||
+ // .dataCarsLocationByPassenger.length -
|
|
||||||
+ // 1,
|
|
||||||
+ // itemBuilder:
|
|
||||||
+ // (BuildContext context, int index) {
|
|
||||||
+ // return Container(
|
|
||||||
+ // color: controller.gender == 'Female'
|
|
||||||
+ // ? const Color.fromARGB(
|
|
||||||
+ // 255, 246, 52, 181)
|
|
||||||
+ // : AppColor.secondaryColor,
|
|
||||||
+ // width: Get.width,
|
|
||||||
+ // child: Row(
|
|
||||||
+ // mainAxisAlignment:
|
|
||||||
+ // MainAxisAlignment.spaceBetween,
|
|
||||||
+ // children: [
|
|
||||||
+ // SizedBox(
|
|
||||||
+ // width: Get.width * .15,
|
|
||||||
+ // child: Padding(
|
|
||||||
+ // padding:
|
|
||||||
+ // const EdgeInsets.all(8.0),
|
|
||||||
+ // child: Image.asset(
|
|
||||||
+ // 'assets/images/jeep.png',
|
|
||||||
+ // width: 50,
|
|
||||||
+ // fit: BoxFit.fill,
|
|
||||||
+ // repeat: ImageRepeat.repeatX,
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // SizedBox(
|
|
||||||
+ // width: Get.width * .55,
|
|
||||||
+ // child: Column(
|
|
||||||
+ // crossAxisAlignment:
|
|
||||||
+ // CrossAxisAlignment.start,
|
|
||||||
+ // mainAxisAlignment:
|
|
||||||
+ // MainAxisAlignment.spaceEvenly,
|
|
||||||
+ // children: [
|
|
||||||
+ // Text(
|
|
||||||
+ // controller.hours > 0
|
|
||||||
+ // ? '${'Your Ride Duration is '.tr}${controller.hours} ${'H and'.tr} ${controller.minutes} ${'m'.tr}'
|
|
||||||
+ // : '${'Your Ride Duration is '.tr} ${controller.minutes} m',
|
|
||||||
+ // style: AppStyle.subtitle,
|
|
||||||
+ // ),
|
|
||||||
+ // // Text(
|
|
||||||
+ // // '${'You will be thier in'.tr} ${DateFormat('h:mm a').format(controller.newTime)}',
|
|
||||||
+ // // style: AppStyle.subtitle,
|
|
||||||
+ // // ),
|
|
||||||
+ // Text(
|
|
||||||
+ // '${'Your trip distance is'.tr} ${controller.distance.toStringAsFixed(2)} ${'KM'.tr}',
|
|
||||||
+ // style: AppStyle.subtitle,
|
|
||||||
+ // )
|
|
||||||
+ // ],
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // SizedBox(
|
|
||||||
+ // width: Get.width * .2,
|
|
||||||
+ // child: Padding(
|
|
||||||
+ // padding: const EdgeInsets.only(
|
|
||||||
+ // right: 5, left: 5),
|
|
||||||
+ // child: Column(
|
|
||||||
+ // crossAxisAlignment:
|
|
||||||
+ // CrossAxisAlignment.center,
|
|
||||||
+ // children: [
|
|
||||||
+ // Container(
|
|
||||||
+ // width: Get.width * .14,
|
|
||||||
+ // height: Get.height * .06,
|
|
||||||
+ // decoration: BoxDecoration(
|
|
||||||
+ // color: AppColor
|
|
||||||
+ // .secondaryColor,
|
|
||||||
+ // shape:
|
|
||||||
+ // BoxShape.rectangle,
|
|
||||||
+ // border: Border.all(
|
|
||||||
+ // width: 2,
|
|
||||||
+ // color: AppColor
|
|
||||||
+ // .greenColor)),
|
|
||||||
+ // child: Center(
|
|
||||||
+ // child: Text(
|
|
||||||
+ // '${'Fee is'.tr} \n${controller.totalPassenger.toStringAsFixed(2)}',
|
|
||||||
+ // style:
|
|
||||||
+ // AppStyle.subtitle,
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // controller.promoTaken
|
|
||||||
+ // ? const Icon(
|
|
||||||
+ // Icons
|
|
||||||
+ // .filter_vintage_rounded,
|
|
||||||
+ // color:
|
|
||||||
+ // AppColor.redColor,
|
|
||||||
+ // )
|
|
||||||
+ // : const SizedBox(
|
|
||||||
+ // height: 0,
|
|
||||||
+ // )
|
|
||||||
+ // ],
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // ],
|
|
||||||
+ // ),
|
|
||||||
+ // );
|
|
||||||
+ // },
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // const SizedBox(
|
|
||||||
+ // height: 5,
|
|
||||||
+ // ),
|
|
||||||
+ // Container(
|
|
||||||
+ // // height: 130,
|
|
||||||
+ // decoration: BoxDecoration(
|
|
||||||
+ // color: AppColor.secondaryColor,
|
|
||||||
+ // boxShadow: [
|
|
||||||
+ // const BoxShadow(
|
|
||||||
+ // color: AppColor.accentColor,
|
|
||||||
+ // offset: Offset(2, 2)),
|
|
||||||
+ // BoxShadow(
|
|
||||||
+ // color: AppColor.accentColor.withOpacity(.4),
|
|
||||||
+ // offset: const Offset(-2, -2))
|
|
||||||
+ // ],
|
|
||||||
+ // borderRadius:
|
|
||||||
+ // const BorderRadius.all(Radius.circular(15))),
|
|
||||||
+ // child: controller.data.isEmpty
|
|
||||||
+ // ? const SizedBox()
|
|
||||||
+ // : Center(
|
|
||||||
+ // child: Padding(
|
|
||||||
+ // padding: const EdgeInsets.symmetric(
|
|
||||||
+ // horizontal: 5),
|
|
||||||
+ // child: Column(
|
|
||||||
+ // children: [
|
|
||||||
+ // Row(
|
|
||||||
+ // children: [
|
|
||||||
+ // const Icon(
|
|
||||||
+ // Icons.location_on,
|
|
||||||
+ // color: AppColor.redColor,
|
|
||||||
+ // ),
|
|
||||||
+ // const SizedBox(
|
|
||||||
+ // width: 10,
|
|
||||||
+ // ),
|
|
||||||
+ // Text(
|
|
||||||
+ // 'From : '.tr,
|
|
||||||
+ // style: AppStyle.subtitle,
|
|
||||||
+ // ),
|
|
||||||
+ // Text(
|
|
||||||
+ // controller.data[0]
|
|
||||||
+ // ['start_address']
|
|
||||||
+ // .toString(),
|
|
||||||
+ // style: AppStyle.subtitle,
|
|
||||||
+ // )
|
|
||||||
+ // ],
|
|
||||||
+ // ),
|
|
||||||
+ // Row(
|
|
||||||
+ // children: [
|
|
||||||
+ // const Icon(Icons
|
|
||||||
+ // .location_searching_rounded),
|
|
||||||
+ // const SizedBox(
|
|
||||||
+ // width: 10,
|
|
||||||
+ // ),
|
|
||||||
+ // Text(
|
|
||||||
+ // 'To : '.tr,
|
|
||||||
+ // style: AppStyle.subtitle,
|
|
||||||
+ // ),
|
|
||||||
+ // Text(
|
|
||||||
+ // controller.data[0]['end_address'],
|
|
||||||
+ // style: AppStyle.subtitle,
|
|
||||||
+ // ),
|
|
||||||
+ // ],
|
|
||||||
+ // ),
|
|
||||||
+ // const Divider(
|
|
||||||
+ // color: AppColor.accentColor,
|
|
||||||
+ // thickness: 1,
|
|
||||||
+ // height: 2,
|
|
||||||
+ // indent: 1,
|
|
||||||
+ // ),
|
|
||||||
+ // SizedBox(
|
|
||||||
+ // height: 40,
|
|
||||||
+ // child: Row(
|
|
||||||
+ // mainAxisAlignment:
|
|
||||||
+ // MainAxisAlignment.center,
|
|
||||||
+ // children: [
|
|
||||||
+ // Container(
|
|
||||||
+ // decoration: BoxDecoration(
|
|
||||||
+ // color:
|
|
||||||
+ // AppColor.secondaryColor,
|
|
||||||
+ // borderRadius:
|
|
||||||
+ // BorderRadius.circular(12),
|
|
||||||
+ // // border: Border.all(),
|
|
||||||
+ // ),
|
|
||||||
+ // child: Row(
|
|
||||||
+ // children: [
|
|
||||||
+ // Icon(
|
|
||||||
+ // Icons.monetization_on,
|
|
||||||
+ // color: Colors.green[400],
|
|
||||||
+ // ),
|
|
||||||
+ // InkWell(
|
|
||||||
+ // onTap: () async {
|
|
||||||
+ // controller
|
|
||||||
+ // .changeCashConfirmPageShown();
|
|
||||||
+ // Get.find<
|
|
||||||
+ // PaymentController>()
|
|
||||||
+ // .getPassengerWallet();
|
|
||||||
+ // },
|
|
||||||
+ // child: GetBuilder<
|
|
||||||
+ // PaymentController>(
|
|
||||||
+ // builder: (paymentController) =>
|
|
||||||
+ // paymentController
|
|
||||||
+ // .isCashChecked
|
|
||||||
+ // ? Text(
|
|
||||||
+ // 'CASH',
|
|
||||||
+ // style: AppStyle
|
|
||||||
+ // .title,
|
|
||||||
+ // )
|
|
||||||
+ // : Text(
|
|
||||||
+ // '${AppInformation.appName} Wallet',
|
|
||||||
+ // style: AppStyle
|
|
||||||
+ // .title,
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // ],
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // const SizedBox(
|
|
||||||
+ // width: 40,
|
|
||||||
+ // ),
|
|
||||||
+ // GetBuilder<PaymentController>(
|
|
||||||
+ // builder:
|
|
||||||
+ // (paymentController) =>
|
|
||||||
+ // Container(
|
|
||||||
+ // decoration:
|
|
||||||
+ // BoxDecoration(
|
|
||||||
+ // color: AppColor
|
|
||||||
+ // .secondaryColor,
|
|
||||||
+ // borderRadius:
|
|
||||||
+ // BorderRadius
|
|
||||||
+ // .circular(
|
|
||||||
+ // 12),
|
|
||||||
+ // ),
|
|
||||||
+ // child: Row(
|
|
||||||
+ // children: [
|
|
||||||
+ // Icon(
|
|
||||||
+ // Icons
|
|
||||||
+ // .qr_code_2_rounded,
|
|
||||||
+ // color: Colors
|
|
||||||
+ // .green[
|
|
||||||
+ // 400],
|
|
||||||
+ // ),
|
|
||||||
+ // InkWell(
|
|
||||||
+ // onTap: () {
|
|
||||||
+ // if (controller
|
|
||||||
+ // .promoTaken ==
|
|
||||||
+ // false) {
|
|
||||||
+ // Get.defaultDialog(
|
|
||||||
+ // title: 'Add Promo'.tr,
|
|
||||||
+ // titleStyle: AppStyle.title,
|
|
||||||
+ // content: Column(
|
|
||||||
+ // children: [
|
|
||||||
+ // SizedBox(
|
|
||||||
+ // width: Get.width * .7,
|
|
||||||
+ // child: TextFormField(
|
|
||||||
+ // controller: controller.promo,
|
|
||||||
+ // decoration: InputDecoration(
|
|
||||||
+ // labelText: 'Promo Code'.tr,
|
|
||||||
+ // hintText: 'Enter promo code'.tr,
|
|
||||||
+ // labelStyle: AppStyle.subtitle,
|
|
||||||
+ // hintStyle: AppStyle.subtitle,
|
|
||||||
+ // border: OutlineInputBorder(
|
|
||||||
+ // borderRadius: BorderRadius.circular(10),
|
|
||||||
+ // ),
|
|
||||||
+ // filled: true,
|
|
||||||
+ // fillColor: Colors.grey[200],
|
|
||||||
+ // focusedBorder: OutlineInputBorder(
|
|
||||||
+ // borderSide: const BorderSide(
|
|
||||||
+ // color: AppColor.primaryColor,
|
|
||||||
+ // width: 2.0,
|
|
||||||
+ // ),
|
|
||||||
+ // borderRadius: BorderRadius.circular(10),
|
|
||||||
+ // ),
|
|
||||||
+ // errorBorder: OutlineInputBorder(
|
|
||||||
+ // borderSide: const BorderSide(
|
|
||||||
+ // color: Colors.red,
|
|
||||||
+ // width: 2.0,
|
|
||||||
+ // ),
|
|
||||||
+ // borderRadius: BorderRadius.circular(10),
|
|
||||||
+ // ),
|
|
||||||
+ // enabledBorder: OutlineInputBorder(
|
|
||||||
+ // borderSide: const BorderSide(
|
|
||||||
+ // color: Colors.grey,
|
|
||||||
+ // width: 1.0,
|
|
||||||
+ // ),
|
|
||||||
+ // borderRadius: BorderRadius.circular(10),
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // MyElevatedButton(
|
|
||||||
+ // title: 'Add Promo'.tr,
|
|
||||||
+ // onPressed: () async {
|
|
||||||
+ // controller.applyPromoCodeToPassenger();
|
|
||||||
+ // },
|
|
||||||
+ // )
|
|
||||||
+ // ],
|
|
||||||
+ // ));
|
|
||||||
+ // } else {
|
|
||||||
+ // Get.snackbar(
|
|
||||||
+ // 'You have promo!'
|
|
||||||
+ // .tr,
|
|
||||||
+ // '',
|
|
||||||
+ // backgroundColor:
|
|
||||||
+ // AppColor.redColor);
|
|
||||||
+ // }
|
|
||||||
+ // },
|
|
||||||
+ // child: Text(
|
|
||||||
+ // 'Add Promo'
|
|
||||||
+ // .tr,
|
|
||||||
+ // style: AppStyle
|
|
||||||
+ // .title,
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // ],
|
|
||||||
+ // ),
|
|
||||||
+ // )),
|
|
||||||
+ // ],
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // SizedBox(
|
|
||||||
+ // width: Get.width * .95,
|
|
||||||
+ // child: Row(
|
|
||||||
+ // mainAxisAlignment:
|
|
||||||
+ // MainAxisAlignment.center,
|
|
||||||
+ // children: [
|
|
||||||
+ // controller.isCashSelectedBeforeConfirmRide ==
|
|
||||||
+ // false
|
|
||||||
+ // ? MyElevatedButton(
|
|
||||||
+ // title: 'Next'.tr,
|
|
||||||
+ // onPressed: () {
|
|
||||||
+ // controller
|
|
||||||
+ // .changeCashConfirmPageShown();
|
|
||||||
+ // },
|
|
||||||
+ // )
|
|
||||||
+ // :
|
|
||||||
+ // // controller.isPassengerChosen ==
|
|
||||||
+ // // false
|
|
||||||
+ // // ? MyElevatedButton(
|
|
||||||
+ // // title: 'Next'.tr,
|
|
||||||
+ // // onPressed: () {
|
|
||||||
+ // // controller
|
|
||||||
+ // // .onChangedPassengersChoose();
|
|
||||||
+ // // Get.defaultDialog(
|
|
||||||
+ // // barrierDismissible:
|
|
||||||
+ // // false,
|
|
||||||
+ // // title:
|
|
||||||
+ // // 'How Many Passengers?'
|
|
||||||
+ // // .tr,
|
|
||||||
+ // // titleStyle:
|
|
||||||
+ // // AppStyle
|
|
||||||
+ // // .title,
|
|
||||||
+ // // content:
|
|
||||||
+ // // Column(
|
|
||||||
+ // // children: [
|
|
||||||
+ // // Text(
|
|
||||||
+ // // 'Allowed up to 4 Passengers.'
|
|
||||||
+ // // .tr,
|
|
||||||
+ // // style: AppStyle
|
|
||||||
+ // // .title,
|
|
||||||
+ // // ),
|
|
||||||
+ // // SizedBox(
|
|
||||||
+ // // height:
|
|
||||||
+ // // 200, // Set the desired height here
|
|
||||||
+ // // child:
|
|
||||||
+ // // CupertinoPicker(
|
|
||||||
+ // // itemExtent:
|
|
||||||
+ // // 32,
|
|
||||||
+ // // onSelectedItemChanged:
|
|
||||||
+ // // (index) {
|
|
||||||
+ // // controller.onChangedPassengerCount(index +
|
|
||||||
+ // // 1);
|
|
||||||
+ // // },
|
|
||||||
+ // // children: [
|
|
||||||
+ // // Text('1 Passenger'.tr),
|
|
||||||
+ // // Text('2 Passengers'.tr),
|
|
||||||
+ // // Text('3 Passengers'.tr),
|
|
||||||
+ // // Text('4 Passengers'.tr),
|
|
||||||
+ // // ],
|
|
||||||
+ // // ),
|
|
||||||
+ // // ),
|
|
||||||
+ // // MyElevatedButton(
|
|
||||||
+ // // title:
|
|
||||||
+ // // 'Back',
|
|
||||||
+ // // onPressed:
|
|
||||||
+ // // () =>
|
|
||||||
+ // // Get.back(),
|
|
||||||
+ // // )
|
|
||||||
+ // // ],
|
|
||||||
+ // // ),
|
|
||||||
+ // // );
|
|
||||||
+ // // },
|
|
||||||
+ // // )
|
|
||||||
+ // // :
|
|
||||||
+ // MyElevatedButton(
|
|
||||||
+ // title: 'Confirm Selection'
|
|
||||||
+ // .tr,
|
|
||||||
+ // onPressed: () {
|
|
||||||
+ // controller
|
|
||||||
+ // .confirmRideForFirstDriver();
|
|
||||||
+ // },
|
|
||||||
+ // ),
|
|
||||||
+ // ],
|
|
||||||
+ // ),
|
|
||||||
+ // )
|
|
||||||
+ // ],
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // ],
|
|
||||||
+ // ),
|
|
||||||
+ // ),
|
|
||||||
+ // ],
|
|
||||||
+ ),
|
|
||||||
+ )
|
|
||||||
+ : const SizedBox());
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+class Details extends StatelessWidget {
|
|
||||||
+ const Details({
|
|
||||||
+ super.key,
|
|
||||||
+ });
|
|
||||||
+
|
|
||||||
+ @override
|
|
||||||
+ Widget build(BuildContext context) {
|
|
||||||
+ return GetBuilder<RideLifecycleController>(
|
|
||||||
+ builder: (controller) => Column(
|
|
||||||
+ children: [
|
|
||||||
+ Row(
|
|
||||||
+ mainAxisAlignment: MainAxisAlignment.spaceAround,
|
|
||||||
+ children: [
|
|
||||||
+ Text(
|
|
||||||
+ '${'Distance is'.tr} ${controller.distance.toStringAsFixed(2)} KM',
|
|
||||||
+ style: AppStyle.title,
|
|
||||||
+ ),
|
|
||||||
+ Text(
|
|
||||||
+ '${'Duration is'.tr} ${controller.data[0]['duration']['text']}',
|
|
||||||
+ style: AppStyle.title,
|
|
||||||
+ ),
|
|
||||||
+ ],
|
|
||||||
+ ),
|
|
||||||
+ Row(
|
|
||||||
+ mainAxisAlignment: MainAxisAlignment.spaceAround,
|
|
||||||
+ children: [
|
|
||||||
+ Text(
|
|
||||||
+ 'Cost for .21/km ${controller.costDistance.toStringAsFixed(2)} ',
|
|
||||||
+ style: AppStyle.title,
|
|
||||||
+ ),
|
|
||||||
+ Text(
|
|
||||||
+ '${'Cost Duration'.tr} ${controller.averageDuration.toStringAsFixed(2)} is ${controller.costDuration.toStringAsFixed(2)} ',
|
|
||||||
+ style: AppStyle.title,
|
|
||||||
+ ),
|
|
||||||
+ ],
|
|
||||||
+ ),
|
|
||||||
+ Row(
|
|
||||||
+ mainAxisAlignment: MainAxisAlignment.spaceAround,
|
|
||||||
+ children: [
|
|
||||||
+ Text(
|
|
||||||
+ 'Total Driver ${controller.totalDriver.toStringAsFixed(2)}',
|
|
||||||
+ style: AppStyle.title,
|
|
||||||
+ ),
|
|
||||||
+ Text(
|
|
||||||
+ 'totaME ${controller.totalME.toStringAsFixed(2)} ',
|
|
||||||
+ style: AppStyle.title,
|
|
||||||
+ ),
|
|
||||||
+ ],
|
|
||||||
+ ),
|
|
||||||
+ Text(
|
|
||||||
+ 'Cost for passenger ${controller.totalPassenger.toStringAsFixed(2)} ',
|
|
||||||
+ style: AppStyle.title,
|
|
||||||
+ ),
|
|
||||||
+ ],
|
|
||||||
+ ));
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
import sys
|
|
||||||
import re
|
|
||||||
|
|
||||||
def cleanup(filepath):
|
|
||||||
with open(filepath, 'r') as f:
|
|
||||||
content = f.read()
|
|
||||||
|
|
||||||
# Remove double kazan = 8;
|
|
||||||
content = re.sub(r'\s*double kazan = 8;', '', content)
|
|
||||||
|
|
||||||
# Remove unawaited(getKazanPercent());
|
|
||||||
content = re.sub(r'\s*unawaited\(getKazanPercent\(\)\);', '', content)
|
|
||||||
|
|
||||||
# Remove await getKazanPercent();
|
|
||||||
content = re.sub(r'\s*await getKazanPercent\(\);', '', content)
|
|
||||||
|
|
||||||
# Remove getKazanPercent method
|
|
||||||
kazan_method_pattern = re.compile(r'Future<void> getKazanPercent\(\) async \{.*?\} catch \(e\) \{.*?\}\s*\}', re.DOTALL)
|
|
||||||
content = kazan_method_pattern.sub('', content)
|
|
||||||
|
|
||||||
with open(filepath, 'w') as f:
|
|
||||||
f.write(content)
|
|
||||||
print(f"Cleaned up {filepath}")
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
cleanup(sys.argv[1])
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
Processing siro_rider...
|
|
||||||
cp: /Users/hamzaaleghwairyeen/development/App/Siro/lib: Operation not permitted
|
|
||||||
@@ -1,62 +0,0 @@
|
|||||||
import sys
|
|
||||||
import re
|
|
||||||
|
|
||||||
def fix_translations(filepath):
|
|
||||||
with open(filepath, 'r') as f:
|
|
||||||
content = f.read()
|
|
||||||
|
|
||||||
# Pattern to match "SYP": "..." and inject "EGP" and "JOD" right after it.
|
|
||||||
def replace_syp(match):
|
|
||||||
syp_line = match.group(0) # e.g. "SYP": "ل.س",
|
|
||||||
syp_val = match.group(1) # e.g. ل.س
|
|
||||||
|
|
||||||
# Decide what EGP and JOD should be based on the SYP translation
|
|
||||||
if 'ل.س' in syp_val:
|
|
||||||
egp_val = syp_val.replace('ل.س', 'ج.م')
|
|
||||||
jod_val = syp_val.replace('ل.س', 'د.أ')
|
|
||||||
elif 'SYP' in syp_val:
|
|
||||||
egp_val = syp_val.replace('SYP', 'EGP')
|
|
||||||
jod_val = syp_val.replace('SYP', 'JOD')
|
|
||||||
else:
|
|
||||||
# Fallback
|
|
||||||
egp_val = 'EGP'
|
|
||||||
jod_val = 'JOD'
|
|
||||||
|
|
||||||
egp_line = syp_line.replace('SYP', 'EGP').replace(syp_val, egp_val)
|
|
||||||
jod_line = syp_line.replace('SYP', 'JOD').replace(syp_val, jod_val)
|
|
||||||
|
|
||||||
return f'{syp_line}\n {egp_line}\n {jod_line}'
|
|
||||||
|
|
||||||
# "SYP": "ل.س",
|
|
||||||
content = re.sub(r'"SYP"\s*:\s*"([^"]+)",', replace_syp, content)
|
|
||||||
|
|
||||||
# "You have gift 300 SYP": "عندك هدية 300 ل.س",
|
|
||||||
content = re.sub(r'"You have gift 300 SYP"\s*:\s*"([^"]+)",', replace_syp, content)
|
|
||||||
|
|
||||||
# "You have gift 30000 SYP": "عندك هدية 30000 ل.س",
|
|
||||||
content = re.sub(r'"You have gift 30000 SYP"\s*:\s*"([^"]+)",', replace_syp, content)
|
|
||||||
|
|
||||||
with open(filepath, 'w') as f:
|
|
||||||
f.write(content)
|
|
||||||
print(f"Fixed {filepath}")
|
|
||||||
|
|
||||||
def fix_json(filepath):
|
|
||||||
with open(filepath, 'r') as f:
|
|
||||||
content = f.read()
|
|
||||||
|
|
||||||
def replace_syp_json(match):
|
|
||||||
syp_line = match.group(0)
|
|
||||||
egp_line = syp_line.replace('SYP', 'EGP')
|
|
||||||
jod_line = syp_line.replace('SYP', 'JOD')
|
|
||||||
return f'{syp_line}\n {egp_line}\n {jod_line}'
|
|
||||||
|
|
||||||
content = re.sub(r'"Points"\s*:\s*"SYP",', replace_syp_json, content)
|
|
||||||
|
|
||||||
with open(filepath, 'w') as f:
|
|
||||||
f.write(content)
|
|
||||||
print(f"Fixed {filepath}")
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
fix_translations('siro_rider/lib/controller/local/translations.dart')
|
|
||||||
fix_translations('siro_driver/lib/controller/local/translations.dart')
|
|
||||||
fix_json('siro_driver/lib/translations_en.json')
|
|
||||||
4570
git_cost.diff
4570
git_cost.diff
File diff suppressed because it is too large
Load Diff
@@ -1 +0,0 @@
|
|||||||
/Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/keytool
|
|
||||||
@@ -1,133 +0,0 @@
|
|||||||
import sys
|
|
||||||
import re
|
|
||||||
|
|
||||||
def refactor_controller(filepath):
|
|
||||||
with open(filepath, 'r') as f:
|
|
||||||
content = f.read()
|
|
||||||
|
|
||||||
# 1. Change double to String for pricing variables
|
|
||||||
content = re.sub(r'double totalPassengerSpeed = 0;', "String totalPassengerSpeed = '0';", content)
|
|
||||||
content = re.sub(r'double totalPassengerBalash = 0;', "String totalPassengerBalash = '0';", content)
|
|
||||||
content = re.sub(r'double totalPassengerComfort = 0;', "String totalPassengerComfort = '0';", content)
|
|
||||||
content = re.sub(r'double totalPassengerElectric = 0;', "String totalPassengerElectric = '0';", content)
|
|
||||||
content = re.sub(r'double totalPassengerLady = 0;', "String totalPassengerLady = '0';", content)
|
|
||||||
content = re.sub(r'double totalPassengerScooter = 0;', "String totalPassengerScooter = '0';", content)
|
|
||||||
content = re.sub(r'double totalPassengerVan = 0;', "String totalPassengerVan = '0';", content)
|
|
||||||
content = re.sub(r'double totalPassengerRayehGai = 0;', "String totalPassengerRayehGai = '0';", content)
|
|
||||||
content = re.sub(r'double totalPassengerRayehGaiComfort = 0;', "String totalPassengerRayehGaiComfort = '0';", content)
|
|
||||||
content = re.sub(r'double totalPassengerRayehGaiBalash = 0;', "String totalPassengerRayehGaiBalash = '0';", content)
|
|
||||||
|
|
||||||
content = re.sub(r'double totalPassenger = 0;', "String totalPassenger = '0';", content)
|
|
||||||
content = re.sub(r'double totalCostPassenger = 0;', "String totalCostPassenger = '0';", content)
|
|
||||||
|
|
||||||
# 2. Replace bottomSheet method
|
|
||||||
bottom_sheet_pattern = re.compile(r'Future bottomSheet\(\) async \{.*?(?=update\(\);\n\s*mapEngine\.changeBottomSheetShown\(forceValue: true\);\n\s*\})', re.DOTALL)
|
|
||||||
|
|
||||||
new_bottom_sheet = '''Future bottomSheet() async {
|
|
||||||
durationToAdd = Duration(seconds: durationToRide);
|
|
||||||
hours = durationToAdd.inHours;
|
|
||||||
minutes = (durationToAdd.inMinutes % 60).round();
|
|
||||||
final DateTime currentTime = DateTime.now();
|
|
||||||
newTime = currentTime.add(durationToAdd);
|
|
||||||
|
|
||||||
try {
|
|
||||||
final res = await CRUD().post(link: AppLink.getPrices, payload: {
|
|
||||||
'distance': distance.toString(),
|
|
||||||
'durationToRide': durationToRide.toString(),
|
|
||||||
'startNameAddress': startNameAddress,
|
|
||||||
'endNameAddress': endNameAddress,
|
|
||||||
'destLat': myDestination.latitude.toString(),
|
|
||||||
'destLng': myDestination.longitude.toString(),
|
|
||||||
'passengerLat': newMyLocation.latitude.toString(),
|
|
||||||
'passengerLng': newMyLocation.longitude.toString(),
|
|
||||||
'walletVal': box.read(BoxName.passengerWalletTotal)?.toString() ?? '0',
|
|
||||||
'activeMenuWaypointCount': activeMenuWaypointCount.toString(),
|
|
||||||
});
|
|
||||||
|
|
||||||
if (res != 'failure') {
|
|
||||||
var response = jsonDecode(res);
|
|
||||||
if (response['status'] == 'success') {
|
|
||||||
var data = response['data'];
|
|
||||||
totalPassengerSpeed = data['totalPassengerSpeed']?.toString() ?? '0';
|
|
||||||
totalPassengerBalash = data['totalPassengerBalash']?.toString() ?? '0';
|
|
||||||
totalPassengerComfort = data['totalPassengerComfort']?.toString() ?? '0';
|
|
||||||
totalPassengerElectric = data['totalPassengerElectric']?.toString() ?? '0';
|
|
||||||
totalPassengerLady = data['totalPassengerLady']?.toString() ?? '0';
|
|
||||||
totalPassengerScooter = data['totalPassengerScooter']?.toString() ?? '0';
|
|
||||||
totalPassengerVan = data['totalPassengerVan']?.toString() ?? '0';
|
|
||||||
totalPassengerRayehGai = data['totalPassengerRayehGai']?.toString() ?? '0';
|
|
||||||
totalPassengerRayehGaiComfort = data['totalPassengerRayehGaiComfort']?.toString() ?? '0';
|
|
||||||
totalPassengerRayehGaiBalash = data['totalPassengerRayehGaiBalash']?.toString() ?? '0';
|
|
||||||
|
|
||||||
totalPassenger = totalPassengerSpeed;
|
|
||||||
totalCostPassenger = totalPassenger;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} catch (e) {
|
|
||||||
Log.print("Error fetching prices: $e");
|
|
||||||
}
|
|
||||||
|
|
||||||
'''
|
|
||||||
content = bottom_sheet_pattern.sub(new_bottom_sheet, content)
|
|
||||||
|
|
||||||
# 3. Replace applyPromoCodeToPassenger
|
|
||||||
promo_pattern = re.compile(r'void applyPromoCodeToPassenger\(BuildContext context\) async \{.*?(?=Get\.back\(\);\n\s*await Future\.delayed\(const Duration\(milliseconds: 120\)\);\n\s*\} catch \(e\) \{)', re.DOTALL)
|
|
||||||
|
|
||||||
new_promo = '''void applyPromoCodeToPassenger(BuildContext context) async {
|
|
||||||
if (promoTaken == true) {
|
|
||||||
MyDialog().getDialog('Promo Already Used'.tr, 'You have already used this promo code.'.tr, () => Get.back());
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (!promoFormKey.currentState!.validate()) return;
|
|
||||||
|
|
||||||
try {
|
|
||||||
final res = await CRUD().post(link: AppLink.getPrices, payload: {
|
|
||||||
'distance': distance.toString(),
|
|
||||||
'durationToRide': durationToRide.toString(),
|
|
||||||
'startNameAddress': startNameAddress,
|
|
||||||
'endNameAddress': endNameAddress,
|
|
||||||
'destLat': myDestination.latitude.toString(),
|
|
||||||
'destLng': myDestination.longitude.toString(),
|
|
||||||
'passengerLat': newMyLocation.latitude.toString(),
|
|
||||||
'passengerLng': newMyLocation.longitude.toString(),
|
|
||||||
'walletVal': box.read(BoxName.passengerWalletTotal)?.toString() ?? '0',
|
|
||||||
'activeMenuWaypointCount': activeMenuWaypointCount.toString(),
|
|
||||||
'promo_code': promo.text,
|
|
||||||
});
|
|
||||||
|
|
||||||
if (res != 'failure') {
|
|
||||||
var response = jsonDecode(res);
|
|
||||||
if (response['status'] == 'success') {
|
|
||||||
var data = response['data'];
|
|
||||||
totalPassengerSpeed = data['totalPassengerSpeed']?.toString() ?? '0';
|
|
||||||
totalPassengerBalash = data['totalPassengerBalash']?.toString() ?? '0';
|
|
||||||
totalPassengerComfort = data['totalPassengerComfort']?.toString() ?? '0';
|
|
||||||
totalPassengerElectric = data['totalPassengerElectric']?.toString() ?? '0';
|
|
||||||
totalPassengerLady = data['totalPassengerLady']?.toString() ?? '0';
|
|
||||||
totalPassengerScooter = data['totalPassengerScooter']?.toString() ?? '0';
|
|
||||||
totalPassengerVan = data['totalPassengerVan']?.toString() ?? '0';
|
|
||||||
totalPassengerRayehGai = data['totalPassengerRayehGai']?.toString() ?? '0';
|
|
||||||
totalPassengerRayehGaiComfort = data['totalPassengerRayehGaiComfort']?.toString() ?? '0';
|
|
||||||
totalPassengerRayehGaiBalash = data['totalPassengerRayehGaiBalash']?.toString() ?? '0';
|
|
||||||
|
|
||||||
promoTaken = true;
|
|
||||||
update();
|
|
||||||
|
|
||||||
Confetti.launch(
|
|
||||||
context,
|
|
||||||
options: const ConfettiOptions(particleCount: 100, spread: 70, y: 0.6),
|
|
||||||
);
|
|
||||||
} else {
|
|
||||||
MyDialog().getDialog('Promo Error'.tr, response['message']?.toString() ?? 'Invalid Promo'.tr, () => Get.back());
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
'''
|
|
||||||
content = promo_pattern.sub(new_promo, content)
|
|
||||||
|
|
||||||
with open(filepath, 'w') as f:
|
|
||||||
f.write(content)
|
|
||||||
print(f"Refactored {filepath}")
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
refactor_controller(sys.argv[1])
|
|
||||||
@@ -1,80 +0,0 @@
|
|||||||
import sys
|
|
||||||
import re
|
|
||||||
|
|
||||||
def refactor_widget(filepath):
|
|
||||||
with open(filepath, 'r') as f:
|
|
||||||
content = f.read()
|
|
||||||
|
|
||||||
# Refactor _getPassengerPriceText
|
|
||||||
price_text_pattern = re.compile(r'String _getPassengerPriceText\(\s*CarType carType, RideLifecycleController mapPassengerController\) \{.*?return formatter\.format\(roundedPrice\);\s*\}', re.DOTALL)
|
|
||||||
|
|
||||||
new_price_text = '''String _getPassengerPriceText(
|
|
||||||
CarType carType, RideLifecycleController mapPassengerController) {
|
|
||||||
String rawPrice;
|
|
||||||
switch (carType.carType) {
|
|
||||||
case 'Comfort':
|
|
||||||
rawPrice = mapPassengerController.totalPassengerComfort;
|
|
||||||
break;
|
|
||||||
case 'Fixed Price':
|
|
||||||
rawPrice = mapPassengerController.totalPassengerSpeed;
|
|
||||||
break;
|
|
||||||
case 'Electric':
|
|
||||||
rawPrice = mapPassengerController.totalPassengerElectric;
|
|
||||||
break;
|
|
||||||
case 'Awfar Car':
|
|
||||||
rawPrice = mapPassengerController.totalPassengerBalash;
|
|
||||||
break;
|
|
||||||
case 'Scooter':
|
|
||||||
case 'Pink Bike':
|
|
||||||
rawPrice = mapPassengerController.totalPassengerScooter;
|
|
||||||
break;
|
|
||||||
case 'Van':
|
|
||||||
rawPrice = mapPassengerController.totalPassengerVan;
|
|
||||||
break;
|
|
||||||
case 'Lady':
|
|
||||||
rawPrice = mapPassengerController.totalPassengerLady;
|
|
||||||
break;
|
|
||||||
case 'Rayeh Gai':
|
|
||||||
rawPrice = mapPassengerController.totalPassengerRayehGai;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
return '...';
|
|
||||||
}
|
|
||||||
return rawPrice;
|
|
||||||
}'''
|
|
||||||
content = price_text_pattern.sub(new_price_text, content)
|
|
||||||
|
|
||||||
# Refactor _getOriginalPrice
|
|
||||||
original_price_pattern = re.compile(r'double _getOriginalPrice\(\s*CarType carType, RideLifecycleController mapPassengerController\) \{.*?return 0\.0;\s*\}\s*\}', re.DOTALL)
|
|
||||||
|
|
||||||
new_original_price = '''String _getOriginalPrice(
|
|
||||||
CarType carType, RideLifecycleController mapPassengerController) {
|
|
||||||
switch (carType.carType) {
|
|
||||||
case 'Comfort':
|
|
||||||
return mapPassengerController.totalPassengerComfort;
|
|
||||||
case 'Fixed Price':
|
|
||||||
return mapPassengerController.totalPassengerSpeed;
|
|
||||||
case 'Electric':
|
|
||||||
return mapPassengerController.totalPassengerElectric;
|
|
||||||
case 'Awfar Car':
|
|
||||||
return mapPassengerController.totalPassengerBalash;
|
|
||||||
case 'Van':
|
|
||||||
return mapPassengerController.totalPassengerVan;
|
|
||||||
case 'Lady':
|
|
||||||
return mapPassengerController.totalPassengerLady;
|
|
||||||
default:
|
|
||||||
return '0';
|
|
||||||
}
|
|
||||||
}'''
|
|
||||||
content = original_price_pattern.sub(new_original_price, content)
|
|
||||||
|
|
||||||
# Refactor _buildRayehGaiOption
|
|
||||||
rayeh_gai_pattern = re.compile(r'Widget _buildRayehGaiOption\(\s*BuildContext context,\s*RideLifecycleController mapPassengerController,\s*String carTypeName,\s*double price\)')
|
|
||||||
content = rayeh_gai_pattern.sub(r'Widget _buildRayehGaiOption(BuildContext context, RideLifecycleController mapPassengerController, String carTypeName, String price)', content)
|
|
||||||
|
|
||||||
with open(filepath, 'w') as f:
|
|
||||||
f.write(content)
|
|
||||||
print(f"Refactored {filepath}")
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
refactor_widget(sys.argv[1])
|
|
||||||
@@ -1,60 +0,0 @@
|
|||||||
import os
|
|
||||||
import re
|
|
||||||
|
|
||||||
def process_file(filepath, app_name):
|
|
||||||
# Skip translations and currency.dart
|
|
||||||
if 'translations.dart' in filepath or 'currency.dart' in filepath or 'translations_en.json' in filepath:
|
|
||||||
return
|
|
||||||
|
|
||||||
with open(filepath, 'r') as f:
|
|
||||||
content = f.read()
|
|
||||||
|
|
||||||
original_content = content
|
|
||||||
|
|
||||||
# We only want to replace instances that represent the currency string.
|
|
||||||
# Be careful not to replace it inside other words or imports.
|
|
||||||
# We'll use regex word boundaries or quotes.
|
|
||||||
|
|
||||||
# Pattern to match 'SYP'.tr or "SYP".tr
|
|
||||||
content = re.sub(r"(['\"]SYP['\"])\.tr", "CurrencyHelper.currency", content)
|
|
||||||
|
|
||||||
# Pattern to match 'SYP' or "SYP" (standalone, not followed by .tr since we did that)
|
|
||||||
content = re.sub(r"['\"]SYP['\"]", "CurrencyHelper.currency", content)
|
|
||||||
|
|
||||||
# Sometimes it's inside string interpolation: '100 SYP' -> '100 ${CurrencyHelper.currency}'
|
|
||||||
# But this is tricky. Let's look for " SYP" or " SYP " or "SYP " inside strings.
|
|
||||||
# A safer way is to find exactly ' SYP' or 'SYP ' inside dart strings and replace with ${CurrencyHelper.currency}
|
|
||||||
# For simplicity, let's just do a pass on common patterns:
|
|
||||||
content = re.sub(r" SYP['\"]", " ${CurrencyHelper.currency}'", content)
|
|
||||||
content = re.sub(r" SYP ", " ${CurrencyHelper.currency} ", content)
|
|
||||||
content = re.sub(r"SYP ", "${CurrencyHelper.currency} ", content)
|
|
||||||
|
|
||||||
# Fix double curly braces if it was already interpolated like '100 SYP' inside something
|
|
||||||
# Actually just simple regex
|
|
||||||
content = content.replace(" ${CurrencyHelper.currency}'", " ${CurrencyHelper.currency}'")
|
|
||||||
content = content.replace(' ${CurrencyHelper.currency}"', ' ${CurrencyHelper.currency}"')
|
|
||||||
|
|
||||||
if content != original_content:
|
|
||||||
# Need to add import
|
|
||||||
import_stmt = f"import 'package:{app_name}/constant/currency.dart';\n"
|
|
||||||
if import_stmt not in content:
|
|
||||||
# find first import
|
|
||||||
import_idx = content.find('import ')
|
|
||||||
if import_idx != -1:
|
|
||||||
content = content[:import_idx] + import_stmt + content[import_idx:]
|
|
||||||
else:
|
|
||||||
content = import_stmt + content
|
|
||||||
|
|
||||||
with open(filepath, 'w') as f:
|
|
||||||
f.write(content)
|
|
||||||
print(f"Updated {filepath}")
|
|
||||||
|
|
||||||
def process_dir(directory, app_name):
|
|
||||||
for root, dirs, files in os.walk(directory):
|
|
||||||
for file in files:
|
|
||||||
if file.endswith('.dart'):
|
|
||||||
process_file(os.path.join(root, file), app_name)
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
process_dir('siro_rider/lib', 'siro_rider')
|
|
||||||
process_dir('siro_driver/lib', 'siro_driver')
|
|
||||||
@@ -1,973 +0,0 @@
|
|||||||
diff --git a/backend/ride/rides/acceptRide.php b/backend/ride/rides/acceptRide.php
|
|
||||||
index 85c7832..487e2bc 100755
|
|
||||||
--- a/backend/ride/rides/acceptRide.php
|
|
||||||
+++ b/backend/ride/rides/acceptRide.php
|
|
||||||
@@ -121,6 +121,8 @@ try {
|
|
||||||
c.color,
|
|
||||||
c.color_hex,
|
|
||||||
(SELECT ROUND(AVG(rating), 2) FROM ratingDriver WHERE driver_id = d.id) AS ratingDriver,
|
|
||||||
+ (SELECT COUNT(*) FROM ratingDriver WHERE driver_id = d.id) AS ratingCount,
|
|
||||||
+ (SELECT COUNT(*) FROM ride WHERE driver_id = d.id AND status IN ('Finished', 'finished')) AS completedRides,
|
|
||||||
dt.token
|
|
||||||
FROM driver d
|
|
||||||
LEFT JOIN CarRegistration c ON c.driverID = d.id
|
|
||||||
@@ -140,6 +142,16 @@ try {
|
|
||||||
}
|
|
||||||
$driverInfo['driverName'] = trim(($driverInfo['first_name'] ?? '') . ' ' . ($driverInfo['last_name'] ?? ''));
|
|
||||||
$driverInfo['ratingDriver'] = $driverInfo['ratingDriver'] ?: "5.0";
|
|
||||||
+ $ratingValue = (float) $driverInfo['ratingDriver'];
|
|
||||||
+ $ratingCount = (int) ($driverInfo['ratingCount'] ?? 0);
|
|
||||||
+ $completedRides = (int) ($driverInfo['completedRides'] ?? 0);
|
|
||||||
+ if ($ratingValue >= 4.8 && $ratingCount >= 50 && $completedRides >= 100) {
|
|
||||||
+ $driverInfo['driverTier'] = 'Professional driver';
|
|
||||||
+ } elseif ($ratingValue >= 4.5 && $ratingCount >= 15 && $completedRides >= 30) {
|
|
||||||
+ $driverInfo['driverTier'] = 'Trusted driver';
|
|
||||||
+ } else {
|
|
||||||
+ $driverInfo['driverTier'] = 'Verified driver';
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
// ═══════════════════════════════════════════════════════════
|
|
||||||
@@ -195,4 +207,4 @@ try {
|
|
||||||
} catch (PDOException $e) {
|
|
||||||
error_log("[accept_ride] CRITICAL: " . $e->getMessage());
|
|
||||||
printFailure("Server error");
|
|
||||||
-}
|
|
||||||
\ No newline at end of file
|
|
||||||
+}
|
|
||||||
diff --git a/backend/ride/rides/getRideOrderID.php b/backend/ride/rides/getRideOrderID.php
|
|
||||||
index f8532ff..7bc828e 100755
|
|
||||||
--- a/backend/ride/rides/getRideOrderID.php
|
|
||||||
+++ b/backend/ride/rides/getRideOrderID.php
|
|
||||||
@@ -96,6 +96,17 @@ try {
|
|
||||||
FROM ratingDriver
|
|
||||||
WHERE ratingDriver.driver_id = :driverID_Sub
|
|
||||||
) AS ratingDriver,
|
|
||||||
+ (
|
|
||||||
+ SELECT COUNT(*)
|
|
||||||
+ FROM ratingDriver
|
|
||||||
+ WHERE ratingDriver.driver_id = :driverID_Sub
|
|
||||||
+ ) AS ratingCount,
|
|
||||||
+ (
|
|
||||||
+ SELECT COUNT(*)
|
|
||||||
+ FROM ride
|
|
||||||
+ WHERE ride.driver_id = :driverID_Sub
|
|
||||||
+ AND ride.status IN ('Finished', 'finished')
|
|
||||||
+ ) AS completedRides,
|
|
||||||
|
|
||||||
driverToken.token AS token
|
|
||||||
|
|
||||||
@@ -143,6 +154,16 @@ try {
|
|
||||||
$finalData[$field] = $encryptionHelper->decryptData($finalData[$field]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
+ $ratingValue = (float) ($finalData['ratingDriver'] ?: 5.0);
|
|
||||||
+ $ratingCount = (int) ($finalData['ratingCount'] ?? 0);
|
|
||||||
+ $completedRides = (int) ($finalData['completedRides'] ?? 0);
|
|
||||||
+ if ($ratingValue >= 4.8 && $ratingCount >= 50 && $completedRides >= 100) {
|
|
||||||
+ $finalData['driverTier'] = 'Professional driver';
|
|
||||||
+ } elseif ($ratingValue >= 4.5 && $ratingCount >= 15 && $completedRides >= 30) {
|
|
||||||
+ $finalData['driverTier'] = 'Trusted driver';
|
|
||||||
+ } else {
|
|
||||||
+ $finalData['driverTier'] = 'Verified driver';
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
echo json_encode([
|
|
||||||
@@ -155,4 +176,4 @@ try {
|
|
||||||
http_response_code(500);
|
|
||||||
echo json_encode(["status" => "failure", "message" => "Server Error: " . $e->getMessage()]);
|
|
||||||
}
|
|
||||||
-?>
|
|
||||||
\ No newline at end of file
|
|
||||||
+?>
|
|
||||||
diff --git a/siro_driver/lib/controller/firebase/firbase_messge.dart b/siro_driver/lib/controller/firebase/firbase_messge.dart
|
|
||||||
index 9de8eae..d183550 100755
|
|
||||||
--- a/siro_driver/lib/controller/firebase/firbase_messge.dart
|
|
||||||
+++ b/siro_driver/lib/controller/firebase/firbase_messge.dart
|
|
||||||
@@ -76,15 +76,22 @@ class FirebaseMessagesController extends GetxController {
|
|
||||||
await fcmToken.subscribeToTopic("drivers"); // أو "users" حسب نوع المستخدم
|
|
||||||
print("Subscribed to 'drivers' topic ✅");
|
|
||||||
|
|
||||||
- FirebaseMessaging.instance.getInitialMessage().then((RemoteMessage? message) async {
|
|
||||||
+ FirebaseMessaging.instance
|
|
||||||
+ .getInitialMessage()
|
|
||||||
+ .then((RemoteMessage? message) async {
|
|
||||||
if (message != null && message.data.isNotEmpty) {
|
|
||||||
Log.print("🔔 FCM getInitialMessage payload: ${message.data}");
|
|
||||||
String? category = message.data['category'] ?? message.data['type'];
|
|
||||||
- if (category == 'ORDER' || category == 'Order' || category == 'OrderVIP' || message.data.containsKey('DriverList')) {
|
|
||||||
+ if (category == 'ORDER' ||
|
|
||||||
+ category == 'Order' ||
|
|
||||||
+ category == 'OrderVIP' ||
|
|
||||||
+ message.data.containsKey('DriverList')) {
|
|
||||||
String? myListString = message.data['DriverList'];
|
|
||||||
if (myListString != null && myListString.isNotEmpty) {
|
|
||||||
- await storage.write(key: 'pending_driver_list', value: myListString);
|
|
||||||
- Log.print("💾 Saved pending driver list to secure storage from getInitialMessage");
|
|
||||||
+ await storage.write(
|
|
||||||
+ key: 'pending_driver_list', value: myListString);
|
|
||||||
+ Log.print(
|
|
||||||
+ "💾 Saved pending driver list to secure storage from getInitialMessage");
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
Future.delayed(const Duration(milliseconds: 1500), () {
|
|
||||||
@@ -107,7 +114,6 @@ class FirebaseMessagesController extends GetxController {
|
|
||||||
// fireBaseTitles(message);
|
|
||||||
// }
|
|
||||||
});
|
|
||||||
- FirebaseMessaging.onBackgroundMessage((RemoteMessage message) async {});
|
|
||||||
|
|
||||||
FirebaseMessaging.onMessageOpenedApp.listen((RemoteMessage message) {
|
|
||||||
if (message.data.isNotEmpty) {
|
|
||||||
diff --git a/siro_driver/lib/controller/functions/background_service.dart b/siro_driver/lib/controller/functions/background_service.dart
|
|
||||||
index e112b36..5d9bec9 100644
|
|
||||||
--- a/siro_driver/lib/controller/functions/background_service.dart
|
|
||||||
+++ b/siro_driver/lib/controller/functions/background_service.dart
|
|
||||||
@@ -9,7 +9,6 @@ import 'package:flutter_overlay_window/flutter_overlay_window.dart';
|
|
||||||
import 'package:socket_io_client/socket_io_client.dart' as IO;
|
|
||||||
import 'package:flutter_overlay_window/flutter_overlay_window.dart' as Overlay;
|
|
||||||
import 'package:get_storage/get_storage.dart';
|
|
||||||
-import 'package:geolocator/geolocator.dart' as geo;
|
|
||||||
import '../../constant/box_name.dart';
|
|
||||||
import '../firebase/local_notification.dart';
|
|
||||||
|
|
||||||
@@ -129,40 +128,21 @@ Future<bool> onStart(ServiceInstance service) async {
|
|
||||||
service.stopSelf();
|
|
||||||
});
|
|
||||||
|
|
||||||
- // 🔥 Location management in background isolate (Using Geolocator)
|
|
||||||
- geo.Position? latestPos;
|
|
||||||
-
|
|
||||||
- // Listen to location changes continuously in the background
|
|
||||||
- geo.Geolocator.getPositionStream(
|
|
||||||
- locationSettings: geo.AndroidSettings(
|
|
||||||
- accuracy: geo.LocationAccuracy.high,
|
|
||||||
- distanceFilter: 10,
|
|
||||||
- intervalDuration: const Duration(seconds: 10),
|
|
||||||
- ),
|
|
||||||
- ).listen((pos) {
|
|
||||||
- latestPos = pos;
|
|
||||||
- });
|
|
||||||
-
|
|
||||||
- // 🔥 MERCY HEARTBEAT: Send location every 2 minutes to keep driver active in 'raids'
|
|
||||||
- Timer.periodic(const Duration(minutes: 2), (timer) async {
|
|
||||||
- if (socket != null && socket.connected && latestPos != null) {
|
|
||||||
- try {
|
|
||||||
- socket.emit('update_location', {
|
|
||||||
- 'driver_id': driverId,
|
|
||||||
- 'lat': latestPos!.latitude,
|
|
||||||
- 'lng': latestPos!.longitude,
|
|
||||||
- 'heading': latestPos!.heading,
|
|
||||||
- 'speed': latestPos!.speed * 3.6,
|
|
||||||
- 'status': box.read(BoxName.statusDriverLocation) ?? 'on',
|
|
||||||
- 'source': 'background_heartbeat'
|
|
||||||
- });
|
|
||||||
- print(
|
|
||||||
- "💓 Background Mercy Heartbeat Sent: ${latestPos!.latitude}, ${latestPos!.longitude}");
|
|
||||||
- } catch (e) {
|
|
||||||
- print("❌ Background Heartbeat Error: $e");
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
- });
|
|
||||||
+ // 🚫 [Architecture Rule] NO redundant GPS stream in background service!
|
|
||||||
+ // LocationController is the SINGLE SOURCE OF TRUTH for all location GPS updates.
|
|
||||||
+ // It already uses location.enableBackgroundMode(enable: true) to keep the GPS
|
|
||||||
+ // stream alive even when the app is in the background. The main socket in
|
|
||||||
+ // LocationController handles all emitLocationToSocket() calls including heartbeat.
|
|
||||||
+ //
|
|
||||||
+ // The background service is ONLY responsible for:
|
|
||||||
+ // 1. Keeping the socket connection alive for receiving 'new_ride_request'
|
|
||||||
+ // and 'cancel_ride' events while the main isolate is paused on Android.
|
|
||||||
+ // 2. Showing the Android Overlay UI for incoming ride requests.
|
|
||||||
+ // 3. Notifications for iOS background state.
|
|
||||||
+ //
|
|
||||||
+ // Location data is not sent from the background isolate — it would conflict
|
|
||||||
+ // with LocationController's stream and cause duplicate GPS listeners,
|
|
||||||
+ // battery drain, and device freeze (as documented in driver_lifecycle.md).
|
|
||||||
|
|
||||||
Timer.periodic(const Duration(seconds: 30), (timer) async {
|
|
||||||
if (service is AndroidServiceInstance) {
|
|
||||||
diff --git a/siro_driver/lib/controller/functions/location_controller.dart b/siro_driver/lib/controller/functions/location_controller.dart
|
|
||||||
index 3367bd8..fc15ef0 100755
|
|
||||||
--- a/siro_driver/lib/controller/functions/location_controller.dart
|
|
||||||
+++ b/siro_driver/lib/controller/functions/location_controller.dart
|
|
||||||
@@ -19,6 +19,7 @@ import '../firebase/local_notification.dart';
|
|
||||||
import '../home/captin/home_captain_controller.dart';
|
|
||||||
import '../home/captin/map_driver_controller.dart';
|
|
||||||
import '../home/payment/captain_wallet_controller.dart';
|
|
||||||
+import '../home/navigation/navigation_controller.dart';
|
|
||||||
import 'background_service.dart';
|
|
||||||
import 'crud.dart';
|
|
||||||
|
|
||||||
@@ -539,6 +540,16 @@ class LocationController extends GetxController with WidgetsBindingObserver {
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
+ if (Get.isRegistered<MapDriverController>()) {
|
|
||||||
+ final mapCtrl = Get.find<MapDriverController>();
|
|
||||||
+ mapCtrl.handleLocationUpdateFromCentral(pos, speed, heading);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ if (Get.isRegistered<NavigationController>()) {
|
|
||||||
+ final navCtrl = Get.find<NavigationController>();
|
|
||||||
+ navCtrl.handleLocationUpdateFromCentral(pos, speed, heading);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
await _saveBehaviorIfMoved(pos, now, currentSpeed: speed);
|
|
||||||
}, onError: (e) => Log.print('❌ Location Stream Error: $e'));
|
|
||||||
}
|
|
||||||
diff --git a/siro_driver/lib/controller/home/captin/map_driver_controller.dart b/siro_driver/lib/controller/home/captin/map_driver_controller.dart
|
|
||||||
index 8aa56ae..3baad9e 100755
|
|
||||||
--- a/siro_driver/lib/controller/home/captin/map_driver_controller.dart
|
|
||||||
+++ b/siro_driver/lib/controller/home/captin/map_driver_controller.dart
|
|
||||||
@@ -2570,27 +2570,19 @@ class MapDriverController extends GetxController
|
|
||||||
}
|
|
||||||
|
|
||||||
void _startLocationListening() {
|
|
||||||
- _locationSubscription?.cancel();
|
|
||||||
- _locationSubscription = geo.Geolocator.getPositionStream(
|
|
||||||
- locationSettings: const geo.LocationSettings(
|
|
||||||
- accuracy: geo.LocationAccuracy.bestForNavigation,
|
|
||||||
- distanceFilter: 2,
|
|
||||||
- ),
|
|
||||||
- ).listen((geo.Position pos) {
|
|
||||||
- _handleLocationUpdate(pos);
|
|
||||||
- });
|
|
||||||
+ // Location stream is now centralized in LocationController to prevent device hanging.
|
|
||||||
+ // LocationController will call handleLocationUpdateFromCentral directly.
|
|
||||||
}
|
|
||||||
|
|
||||||
/// [Fix C-4] تحديث myLocation في المستمع الأساسي
|
|
||||||
- void _handleLocationUpdate(geo.Position pos) {
|
|
||||||
- final newLoc = LatLng(pos.latitude, pos.longitude);
|
|
||||||
+ void handleLocationUpdateFromCentral(LatLng newLoc, double posSpeed, double posHeading) {
|
|
||||||
myLocation = newLoc; // ← [Fix C-4] تحديث الموقع الفوري
|
|
||||||
_oldLoc = smoothedLocation ?? newLoc;
|
|
||||||
_targetLoc = newLoc;
|
|
||||||
|
|
||||||
_oldHeading = smoothedHeading;
|
|
||||||
- if (pos.speed > 0.5) {
|
|
||||||
- _targetHeading = pos.heading;
|
|
||||||
+ if (posSpeed > 0.5) {
|
|
||||||
+ _targetHeading = posHeading;
|
|
||||||
} else {
|
|
||||||
_targetHeading = _oldHeading;
|
|
||||||
}
|
|
||||||
diff --git a/siro_driver/lib/controller/home/captin/order_request_controller.dart b/siro_driver/lib/controller/home/captin/order_request_controller.dart
|
|
||||||
index f58d4f4..169ca95 100755
|
|
||||||
--- a/siro_driver/lib/controller/home/captin/order_request_controller.dart
|
|
||||||
+++ b/siro_driver/lib/controller/home/captin/order_request_controller.dart
|
|
||||||
@@ -69,6 +69,7 @@ class OrderRequestController extends GetxController
|
|
||||||
|
|
||||||
// --- الخريطة ---
|
|
||||||
Set<Polyline> polylines = {};
|
|
||||||
+ bool _hasCalculatedFullJourney = false;
|
|
||||||
|
|
||||||
// حالة التطبيق والصوت
|
|
||||||
bool isInBackground = false;
|
|
||||||
@@ -219,6 +220,11 @@ class OrderRequestController extends GetxController
|
|
||||||
// ----------------------------------------------------------------------
|
|
||||||
|
|
||||||
Future<void> _calculateFullJourney() async {
|
|
||||||
+ if (_hasCalculatedFullJourney) {
|
|
||||||
+ if (mapController != null) zoomToFitRide();
|
|
||||||
+ return;
|
|
||||||
+ }
|
|
||||||
+ _hasCalculatedFullJourney = true;
|
|
||||||
// Don't block on mapController being null - we'll draw routes
|
|
||||||
// and markers first, then zoom when controller is ready
|
|
||||||
bool canZoom = mapController != null;
|
|
||||||
@@ -281,7 +287,7 @@ class OrderRequestController extends GetxController
|
|
||||||
totalTripDistance = tripResult['distance_text'];
|
|
||||||
totalTripDuration = tripResult['duration_text'];
|
|
||||||
polylines.add(tripResult['polyline']);
|
|
||||||
-
|
|
||||||
+
|
|
||||||
// 🔥 تخزين استجابة السيرفر كاملة (بما فيها الـ points والـ instructions)
|
|
||||||
if (tripResult['raw_response'] != null) {
|
|
||||||
box.write('cached_trip_route', tripResult['raw_response']);
|
|
||||||
diff --git a/siro_driver/lib/controller/home/navigation/navigation_controller.dart b/siro_driver/lib/controller/home/navigation/navigation_controller.dart
|
|
||||||
index e607f6d..e2a4f08 100644
|
|
||||||
--- a/siro_driver/lib/controller/home/navigation/navigation_controller.dart
|
|
||||||
+++ b/siro_driver/lib/controller/home/navigation/navigation_controller.dart
|
|
||||||
@@ -476,32 +476,18 @@ class NavigationController extends GetxController
|
|
||||||
}
|
|
||||||
|
|
||||||
void _startLocationStream() {
|
|
||||||
- _locationStreamSubscription?.cancel();
|
|
||||||
- // Listen to location updates with minimum distance filter of 2 meters
|
|
||||||
- // This provides real-time updates without the 3-4 second delay
|
|
||||||
- _locationStreamSubscription = Geolocator.getPositionStream(
|
|
||||||
- locationSettings: const LocationSettings(
|
|
||||||
- accuracy: LocationAccuracy.high,
|
|
||||||
- distanceFilter: 2, // Update every 2 meters
|
|
||||||
- ),
|
|
||||||
- ).listen(
|
|
||||||
- (Position position) {
|
|
||||||
- _handleLocationUpdate(position);
|
|
||||||
- },
|
|
||||||
- onError: (error) {
|
|
||||||
- Log.print("DEBUG: Location stream error: $error");
|
|
||||||
- },
|
|
||||||
- );
|
|
||||||
+ // Location stream is now centralized in LocationController to prevent device hanging.
|
|
||||||
+ // LocationController will call handleLocationUpdateFromCentral directly.
|
|
||||||
}
|
|
||||||
|
|
||||||
bool _isProcessing = false;
|
|
||||||
- Future<void> _handleLocationUpdate(Position position) async {
|
|
||||||
+ Future<void> handleLocationUpdateFromCentral(LatLng newLoc, double locSpeed, double locHeading) async {
|
|
||||||
if (_isProcessing) return;
|
|
||||||
_isProcessing = true;
|
|
||||||
|
|
||||||
try {
|
|
||||||
- final newLoc = LatLng(position.latitude, position.longitude);
|
|
||||||
- currentSpeed = position.speed * 3.6; // Convert m/s to km/h
|
|
||||||
+ currentSpeed = locSpeed; // Convert m/s to km/h already done by location controller if needed, wait location_controller sends raw speed or km/h? It sends raw speed. So we should * 3.6
|
|
||||||
+ currentSpeed = locSpeed * 3.6;
|
|
||||||
|
|
||||||
// Skip if movement is too small
|
|
||||||
if (_lastProcessedLocation != null) {
|
|
||||||
@@ -544,7 +530,7 @@ class NavigationController extends GetxController
|
|
||||||
_targetLoc!.longitude,
|
|
||||||
);
|
|
||||||
} else {
|
|
||||||
- _targetHeading = position.heading;
|
|
||||||
+ _targetHeading = locHeading;
|
|
||||||
}
|
|
||||||
|
|
||||||
_animController?.forward(from: 0.0);
|
|
||||||
diff --git a/siro_rider/lib/controller/firebase/firbase_messge.dart b/siro_rider/lib/controller/firebase/firbase_messge.dart
|
|
||||||
index e24c3c8..5b54235 100644
|
|
||||||
--- a/siro_rider/lib/controller/firebase/firbase_messge.dart
|
|
||||||
+++ b/siro_rider/lib/controller/firebase/firbase_messge.dart
|
|
||||||
@@ -87,12 +87,6 @@ class FirebaseMessagesController extends GetxController {
|
|
||||||
fireBaseTitles(message);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
- FirebaseMessaging.onBackgroundMessage((RemoteMessage message) async {
|
|
||||||
- // Handle background message
|
|
||||||
- if (message.data.isNotEmpty) {
|
|
||||||
- fireBaseTitles(message);
|
|
||||||
- }
|
|
||||||
- });
|
|
||||||
|
|
||||||
FirebaseMessaging.onMessageOpenedApp.listen((RemoteMessage message) {
|
|
||||||
if (message.data.isNotEmpty && message.notification != null) {
|
|
||||||
diff --git a/siro_rider/lib/controller/home/map/map_socket_controller.dart b/siro_rider/lib/controller/home/map/map_socket_controller.dart
|
|
||||||
index 3d73bae..95fbf21 100644
|
|
||||||
--- a/siro_rider/lib/controller/home/map/map_socket_controller.dart
|
|
||||||
+++ b/siro_rider/lib/controller/home/map/map_socket_controller.dart
|
|
||||||
@@ -283,7 +283,7 @@ class MapSocketController extends GetxController {
|
|
||||||
}
|
|
||||||
|
|
||||||
final dynamic distanceValue =
|
|
||||||
- data['distance_m'] ?? data['distance_meters'] ?? data['distance'];
|
|
||||||
+ data['distance_m'] ?? data['distance_meters'];
|
|
||||||
final double? distanceMeters =
|
|
||||||
double.tryParse(distanceValue?.toString() ?? '');
|
|
||||||
final int? etaSeconds = data['eta_seconds'] == null
|
|
||||||
diff --git a/siro_rider/lib/controller/home/map/ride_lifecycle_controller.dart b/siro_rider/lib/controller/home/map/ride_lifecycle_controller.dart
|
|
||||||
index c229ad2..c264a61 100644
|
|
||||||
--- a/siro_rider/lib/controller/home/map/ride_lifecycle_controller.dart
|
|
||||||
+++ b/siro_rider/lib/controller/home/map/ride_lifecycle_controller.dart
|
|
||||||
@@ -112,6 +112,7 @@ class RideLifecycleController extends GetxController {
|
|
||||||
late String driverId = '';
|
|
||||||
late String make = '';
|
|
||||||
late String model = '';
|
|
||||||
+ late String gender = '';
|
|
||||||
late String carColor = '';
|
|
||||||
late String licensePlate = '';
|
|
||||||
late String driverName = '';
|
|
||||||
@@ -120,6 +121,9 @@ class RideLifecycleController extends GetxController {
|
|
||||||
late String colorHex = '';
|
|
||||||
late String carYear = '';
|
|
||||||
late String driverRate = '5.0';
|
|
||||||
+ late String driverRatingCount = '0';
|
|
||||||
+ late String driverCompletedRides = '0';
|
|
||||||
+ late String driverTier = 'Verified driver';
|
|
||||||
late String driverToken = '';
|
|
||||||
|
|
||||||
double kazan = 8;
|
|
||||||
@@ -1481,7 +1485,8 @@ class RideLifecycleController extends GetxController {
|
|
||||||
|
|
||||||
// إيقاف جلب السيارات المجاورة ومسحها، باستثناء السائق الذي قبل الطلب
|
|
||||||
mapEngine.reloadStartApp = false;
|
|
||||||
- mapEngine.markers.removeWhere((marker) => marker.markerId.value != driverId.toString());
|
|
||||||
+ mapEngine.markers
|
|
||||||
+ .removeWhere((marker) => marker.markerId.value != driverId.toString());
|
|
||||||
mapEngine.update();
|
|
||||||
|
|
||||||
await getDriverCarsLocationToPassengerAfterApplied();
|
|
||||||
@@ -1490,8 +1495,7 @@ class RideLifecycleController extends GetxController {
|
|
||||||
LatLng driverPos = driverCarsLocationToPassengerAfterApplied.last;
|
|
||||||
Log.print(
|
|
||||||
'[rideAppliedFromDriver] 📍 Driver at: $driverPos, Passenger at: $passengerLocation');
|
|
||||||
- await getInitialDriverDistanceAndDuration(driverPos, passengerLocation);
|
|
||||||
- await drawDriverPathOnly(driverPos, passengerLocation);
|
|
||||||
+ await calculateDriverToPassengerRoute(driverPos, passengerLocation);
|
|
||||||
mapEngine.fitCameraToPoints(driverPos, passengerLocation);
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -1656,6 +1660,9 @@ class RideLifecycleController extends GetxController {
|
|
||||||
driverToken = data['token']?.toString() ?? '';
|
|
||||||
carYear = data['year']?.toString() ?? '';
|
|
||||||
driverRate = data['ratingDriver']?.toString() ?? '5.0';
|
|
||||||
+ driverRatingCount = data['ratingCount']?.toString() ?? '0';
|
|
||||||
+ driverCompletedRides = data['completedRides']?.toString() ?? '0';
|
|
||||||
+ driverTier = data['driverTier']?.toString() ?? 'Verified driver';
|
|
||||||
|
|
||||||
update();
|
|
||||||
}
|
|
||||||
@@ -2221,6 +2228,15 @@ class RideLifecycleController extends GetxController {
|
|
||||||
polyLines = polyLines
|
|
||||||
.where((p) => !p.polylineId.value.startsWith('driver_route'))
|
|
||||||
.toSet();
|
|
||||||
+ polyLines = {
|
|
||||||
+ ...polyLines,
|
|
||||||
+ Polyline(
|
|
||||||
+ polylineId: const PolylineId('main_route'),
|
|
||||||
+ points: decodedPoints,
|
|
||||||
+ color: const Color(0xFF2196F3),
|
|
||||||
+ width: 6,
|
|
||||||
+ )
|
|
||||||
+ };
|
|
||||||
} else {
|
|
||||||
// مسح السلمات القديمة أولاً
|
|
||||||
polyLines = polyLines
|
|
||||||
@@ -2290,7 +2306,9 @@ class RideLifecycleController extends GetxController {
|
|
||||||
_routeHeadingMismatchCount = 0;
|
|
||||||
_isRecalculatingRoute = true;
|
|
||||||
if (statusRide == 'Begin' ||
|
|
||||||
- currentRideState.value == RideState.inProgress) {
|
|
||||||
+ statusRide == 'Arrived' ||
|
|
||||||
+ currentRideState.value == RideState.inProgress ||
|
|
||||||
+ currentRideState.value == RideState.driverArrived) {
|
|
||||||
await calculateDriverToPassengerRoute(driverPos, myDestination,
|
|
||||||
isBeginPhase: true);
|
|
||||||
} else {
|
|
||||||
@@ -2504,6 +2522,8 @@ class RideLifecycleController extends GetxController {
|
|
||||||
String icon;
|
|
||||||
if (model.contains('دراجة') || make.contains('دراجة')) {
|
|
||||||
icon = mapEngine.motoIcon;
|
|
||||||
+ } else if (gender == 'Female') {
|
|
||||||
+ icon = mapEngine.ladyIcon;
|
|
||||||
} else {
|
|
||||||
icon = mapEngine.carIcon;
|
|
||||||
}
|
|
||||||
@@ -3026,6 +3046,17 @@ class RideLifecycleController extends GetxController {
|
|
||||||
mapEngine.playRouteAnimation(
|
|
||||||
mapEngine.polylineCoordinates, mapEngine.lastComputedBounds);
|
|
||||||
}
|
|
||||||
+
|
|
||||||
+ if (driverCarsLocationToPassengerAfterApplied.isNotEmpty &&
|
|
||||||
+ myDestination.latitude != 0 &&
|
|
||||||
+ myDestination.longitude != 0) {
|
|
||||||
+ await calculateDriverToPassengerRoute(
|
|
||||||
+ driverCarsLocationToPassengerAfterApplied.last,
|
|
||||||
+ myDestination,
|
|
||||||
+ isBeginPhase: true,
|
|
||||||
+ );
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
update();
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -3903,12 +3934,37 @@ class RideLifecycleController extends GetxController {
|
|
||||||
|
|
||||||
make = data['make']?.toString() ?? '';
|
|
||||||
model = data['model']?.toString() ?? '';
|
|
||||||
+ gender = data['gender']?.toString() ?? '';
|
|
||||||
carColor = data['color']?.toString() ?? '';
|
|
||||||
colorHex = data['color_hex']?.toString() ?? '';
|
|
||||||
licensePlate = data['car_plate']?.toString() ?? '';
|
|
||||||
carYear = data['year']?.toString() ?? '';
|
|
||||||
|
|
||||||
+ // المحاولة الفورية لرسم السائق إذا توفرت الإحداثيات في البيانات
|
|
||||||
+ double lat = double.tryParse(
|
|
||||||
+ data['latitude']?.toString() ?? data['lat']?.toString() ?? '0') ??
|
|
||||||
+ 0;
|
|
||||||
+ double lng = double.tryParse(data['longitude']?.toString() ??
|
|
||||||
+ data['lng']?.toString() ??
|
|
||||||
+ '0') ??
|
|
||||||
+ 0;
|
|
||||||
+ double heading = double.tryParse(data['heading']?.toString() ?? '0') ?? 0;
|
|
||||||
+
|
|
||||||
+ if (lat != 0 && lng != 0) {
|
|
||||||
+ LatLng initialPos = LatLng(lat, lng);
|
|
||||||
+ if (driverCarsLocationToPassengerAfterApplied.isEmpty) {
|
|
||||||
+ driverCarsLocationToPassengerAfterApplied.add(initialPos);
|
|
||||||
+ } else {
|
|
||||||
+ driverCarsLocationToPassengerAfterApplied[0] = initialPos;
|
|
||||||
+ }
|
|
||||||
+ // تحديث الماركر فوراً لضمان ظهوره بشكل موثوق
|
|
||||||
+ updateDriverMarker(initialPos, heading);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
driverRate = data['ratingDriver']?.toString() ?? '5.0';
|
|
||||||
+ driverRatingCount = data['ratingCount']?.toString() ?? '0';
|
|
||||||
+ driverCompletedRides = data['completedRides']?.toString() ?? '0';
|
|
||||||
+ driverTier = data['driverTier']?.toString() ?? 'Verified driver';
|
|
||||||
driverToken = data['token']?.toString() ?? '';
|
|
||||||
|
|
||||||
update();
|
|
||||||
@@ -4185,55 +4241,6 @@ class RideLifecycleController extends GetxController {
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
- Future<void> getDistanceFromDriverAfterAcceptedRide(
|
|
||||||
- String origin, String destination) async {
|
|
||||||
- String apiKey = Env.mapKeyOsm;
|
|
||||||
- if (origin.isEmpty) {
|
|
||||||
- origin = '${passengerLocation.latitude},${passengerLocation.longitude}';
|
|
||||||
- }
|
|
||||||
- var uri = Uri.parse(
|
|
||||||
- '$dynamicApiUrl?origin=$origin&destination=$destination&steps=false&overview=false');
|
|
||||||
- Log.print('uri: $uri');
|
|
||||||
-
|
|
||||||
- http.Response response;
|
|
||||||
- Map<String, dynamic> responseData;
|
|
||||||
-
|
|
||||||
- try {
|
|
||||||
- response = await http.get(
|
|
||||||
- uri,
|
|
||||||
- headers: {
|
|
||||||
- 'X-API-KEY': apiKey,
|
|
||||||
- },
|
|
||||||
- ).timeout(const Duration(seconds: 20));
|
|
||||||
-
|
|
||||||
- if (response.statusCode != 200) {
|
|
||||||
- Log.print('Error from API: ${response.statusCode}');
|
|
||||||
- isLoading = false;
|
|
||||||
- update();
|
|
||||||
- return;
|
|
||||||
- }
|
|
||||||
- if (Get.isBottomSheetOpen ?? false) {
|
|
||||||
- Get.back();
|
|
||||||
- }
|
|
||||||
- isDrawingRoute = false;
|
|
||||||
-
|
|
||||||
- responseData = json.decode(response.body);
|
|
||||||
- Log.print('responseData: $responseData');
|
|
||||||
-
|
|
||||||
- if (responseData['status'] != 'ok') {
|
|
||||||
- Log.print('API returned an error: ${responseData['message']}');
|
|
||||||
- isLoading = false;
|
|
||||||
- update();
|
|
||||||
- return;
|
|
||||||
- }
|
|
||||||
- } catch (e) {
|
|
||||||
- Log.print('Failed to get directions: $e');
|
|
||||||
- isLoading = false;
|
|
||||||
- update();
|
|
||||||
- return;
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
Future<void> _stageNiceToHave() async {
|
|
||||||
Log.print('🚀 MapPassengerController: Starting _stageNiceToHave');
|
|
||||||
|
|
||||||
diff --git a/siro_rider/lib/controller/home/map/ui_interactions_controller.dart b/siro_rider/lib/controller/home/map/ui_interactions_controller.dart
|
|
||||||
index 388c28e..afa97d9 100644
|
|
||||||
--- a/siro_rider/lib/controller/home/map/ui_interactions_controller.dart
|
|
||||||
+++ b/siro_rider/lib/controller/home/map/ui_interactions_controller.dart
|
|
||||||
@@ -4,7 +4,6 @@ import 'dart:ui';
|
|
||||||
import 'package:flutter/material.dart';
|
|
||||||
import 'package:flutter/cupertino.dart';
|
|
||||||
import 'package:get/get.dart';
|
|
||||||
-import 'package:intaleq_maps/intaleq_maps.dart';
|
|
||||||
|
|
||||||
import '../../../constant/box_name.dart';
|
|
||||||
import '../../../constant/colors.dart';
|
|
||||||
@@ -15,19 +14,13 @@ import '../../../main.dart'; // contains global 'box'
|
|
||||||
import '../../../print.dart';
|
|
||||||
import '../../../services/emergency_signal_service.dart';
|
|
||||||
import '../../../views/widgets/elevated_btn.dart';
|
|
||||||
-import '../../../views/widgets/mydialoug.dart';
|
|
||||||
import '../../../views/widgets/my_textField.dart';
|
|
||||||
-import '../../../views/home/map_page_passenger.dart';
|
|
||||||
-import '../../../views/widgets/error_snakbar.dart';
|
|
||||||
-import '../../../models/model/painter_copoun.dart';
|
|
||||||
import '../../functions/launch.dart';
|
|
||||||
-import '../../firebase/local_notification.dart';
|
|
||||||
import '../../firebase/notification_service.dart';
|
|
||||||
import '../../functions/crud.dart';
|
|
||||||
import '../../functions/tts.dart';
|
|
||||||
import 'ride_lifecycle_controller.dart';
|
|
||||||
import 'location_search_controller.dart';
|
|
||||||
-import 'map_engine_controller.dart';
|
|
||||||
|
|
||||||
class UiInteractionsController extends GetxController {
|
|
||||||
TextEditingController sosPhonePassengerProfile = TextEditingController();
|
|
||||||
@@ -56,54 +49,54 @@ class UiInteractionsController extends GetxController {
|
|
||||||
|
|
||||||
sosPhonePassengerProfile.clear();
|
|
||||||
Get.defaultDialog(
|
|
||||||
- title: 'Add SOS Phone'.tr,
|
|
||||||
- titleStyle: AppStyle.title,
|
|
||||||
- content: Form(
|
|
||||||
- key: sosFormKey,
|
|
||||||
- child: Column(
|
|
||||||
- children: [
|
|
||||||
- MyTextForm(
|
|
||||||
- controller: sosPhonePassengerProfile,
|
|
||||||
- label: 'insert sos phone'.tr,
|
|
||||||
- hint: 'e.g. 0912345678 (Default +963)'.tr,
|
|
||||||
- type: TextInputType.phone,
|
|
||||||
- ),
|
|
||||||
- const SizedBox(height: 10),
|
|
||||||
- Text(
|
|
||||||
- "Note: If no country code is entered, it will be saved as Syrian (+963).".tr,
|
|
||||||
- style: TextStyle(fontSize: 12, color: Colors.grey),
|
|
||||||
- textAlign: TextAlign.center,
|
|
||||||
- ),
|
|
||||||
- ],
|
|
||||||
+ title: 'Add SOS Phone'.tr,
|
|
||||||
+ titleStyle: AppStyle.title,
|
|
||||||
+ content: Form(
|
|
||||||
+ key: sosFormKey,
|
|
||||||
+ child: Column(
|
|
||||||
+ children: [
|
|
||||||
+ MyTextForm(
|
|
||||||
+ controller: sosPhonePassengerProfile,
|
|
||||||
+ label: 'insert sos phone'.tr,
|
|
||||||
+ hint: 'e.g. 0912345678 (Default +963)'.tr,
|
|
||||||
+ type: TextInputType.phone,
|
|
||||||
+ ),
|
|
||||||
+ const SizedBox(height: 10),
|
|
||||||
+ Text(
|
|
||||||
+ "Note: If no country code is entered, it will be saved as Syrian (+963)."
|
|
||||||
+ .tr,
|
|
||||||
+ style: TextStyle(fontSize: 12, color: Colors.grey),
|
|
||||||
+ textAlign: TextAlign.center,
|
|
||||||
+ ),
|
|
||||||
+ ],
|
|
||||||
+ ),
|
|
||||||
),
|
|
||||||
- ),
|
|
||||||
- confirm: MyElevatedButton(
|
|
||||||
- title: 'Save'.tr,
|
|
||||||
- onPressed: () async {
|
|
||||||
- if (sosFormKey.currentState!.validate()) {
|
|
||||||
- Get.back();
|
|
||||||
- var numberPhone =
|
|
||||||
- formatSyrianPhoneNumber(sosPhonePassengerProfile.text);
|
|
||||||
-
|
|
||||||
- await CRUD().post(
|
|
||||||
- link: AppLink.updateprofile,
|
|
||||||
- payload: {
|
|
||||||
- 'id': box.read(BoxName.passengerID),
|
|
||||||
- 'sosPhone': numberPhone,
|
|
||||||
- },
|
|
||||||
- );
|
|
||||||
-
|
|
||||||
- box.write(BoxName.sosPhonePassenger, numberPhone);
|
|
||||||
- onSuccess();
|
|
||||||
- }
|
|
||||||
- },
|
|
||||||
- ),
|
|
||||||
- cancel: MyElevatedButton(
|
|
||||||
- title: 'Cancel'.tr,
|
|
||||||
- onPressed: () => Get.back(),
|
|
||||||
- kolor: AppColor.redColor,
|
|
||||||
- )
|
|
||||||
- );
|
|
||||||
+ confirm: MyElevatedButton(
|
|
||||||
+ title: 'Save'.tr,
|
|
||||||
+ onPressed: () async {
|
|
||||||
+ if (sosFormKey.currentState!.validate()) {
|
|
||||||
+ Get.back();
|
|
||||||
+ var numberPhone =
|
|
||||||
+ formatSyrianPhoneNumber(sosPhonePassengerProfile.text);
|
|
||||||
+
|
|
||||||
+ await CRUD().post(
|
|
||||||
+ link: AppLink.updateprofile,
|
|
||||||
+ payload: {
|
|
||||||
+ 'id': box.read(BoxName.passengerID),
|
|
||||||
+ 'sosPhone': numberPhone,
|
|
||||||
+ },
|
|
||||||
+ );
|
|
||||||
+
|
|
||||||
+ box.write(BoxName.sosPhonePassenger, numberPhone);
|
|
||||||
+ onSuccess();
|
|
||||||
+ }
|
|
||||||
+ },
|
|
||||||
+ ),
|
|
||||||
+ cancel: MyElevatedButton(
|
|
||||||
+ title: 'Cancel'.tr,
|
|
||||||
+ onPressed: () => Get.back(),
|
|
||||||
+ kolor: AppColor.redColor,
|
|
||||||
+ ));
|
|
||||||
}
|
|
||||||
|
|
||||||
void sosPassenger() {
|
|
||||||
@@ -114,10 +107,12 @@ class UiInteractionsController extends GetxController {
|
|
||||||
titleStyle: AppStyle.title.copyWith(color: AppColor.redColor),
|
|
||||||
content: Column(
|
|
||||||
children: [
|
|
||||||
- Icon(Icons.warning_amber_rounded, size: 50, color: AppColor.redColor),
|
|
||||||
+ Icon(Icons.warning_amber_rounded,
|
|
||||||
+ size: 50, color: AppColor.redColor),
|
|
||||||
const SizedBox(height: 10),
|
|
||||||
Text(
|
|
||||||
- "Do you want to send an emergency message to your SOS contact?".tr,
|
|
||||||
+ "Do you want to send an emergency message to your SOS contact?"
|
|
||||||
+ .tr,
|
|
||||||
textAlign: TextAlign.center,
|
|
||||||
style: AppStyle.title,
|
|
||||||
),
|
|
||||||
diff --git a/siro_rider/lib/controller/local/translations.dart b/siro_rider/lib/controller/local/translations.dart
|
|
||||||
index 5244054..d42c370 100644
|
|
||||||
--- a/siro_rider/lib/controller/local/translations.dart
|
|
||||||
+++ b/siro_rider/lib/controller/local/translations.dart
|
|
||||||
@@ -42,6 +42,7 @@ class MyTranslation extends Translations {
|
|
||||||
"Arrived": "وصلنا",
|
|
||||||
"Audio Recording": "تسجيل صوتي",
|
|
||||||
"Call": "اتصال",
|
|
||||||
+ "Call Options": "خيارات الاتصال",
|
|
||||||
"Call Connected": "تم فتح الاتصال",
|
|
||||||
"Call Support": "اتصل بالدعم",
|
|
||||||
"Call left": "مكالمات متبقية",
|
|
||||||
@@ -49,6 +50,8 @@ class MyTranslation extends Translations {
|
|
||||||
"Change Photo": "تغيير الصورة",
|
|
||||||
"Captain": "الكابتن",
|
|
||||||
"Choose from Gallery": "اختر من المعرض",
|
|
||||||
+ "Choose how you want to call the driver":
|
|
||||||
+ "اختر طريقة الاتصال بالكابتن",
|
|
||||||
"Choose from contact": "اختر من جهات الاتصال",
|
|
||||||
"Click to track the trip": "اضغط لتتبع المشوار",
|
|
||||||
"Close panel": "إغلاق اللوحة",
|
|
||||||
@@ -92,6 +95,9 @@ class MyTranslation extends Translations {
|
|
||||||
"Finished": "انتهى",
|
|
||||||
"Fixed Price": "سعر ثابت",
|
|
||||||
"Free Call": "مكالمة مجانية",
|
|
||||||
+ "Professional driver": "كابتن محترف",
|
|
||||||
+ "Trusted driver": "كابتن موثوق",
|
|
||||||
+ "Verified driver": "كابتن موثق",
|
|
||||||
"General": "عام",
|
|
||||||
"Grant": "منح الإذن",
|
|
||||||
"Have a Promo Code?": "معك كود خصم؟",
|
|
||||||
@@ -178,6 +184,7 @@ class MyTranslation extends Translations {
|
|
||||||
"Preferences": "التفضيلات",
|
|
||||||
"Profile photo updated": "تم تحديث صورة الغلاف",
|
|
||||||
"Quick Message": "رسالة سريعة",
|
|
||||||
+ "reviews": "تقييم",
|
|
||||||
"Rating is": "التقييم هو",
|
|
||||||
"Received empty route data.": "تم استلام بيانات طريق فارغة.",
|
|
||||||
"Record": "تسجيل",
|
|
||||||
@@ -211,6 +218,7 @@ class MyTranslation extends Translations {
|
|
||||||
"Set as Work": "تحديد كالشغل",
|
|
||||||
"Share": "مشاركة",
|
|
||||||
"Share Trip": "مشاركة المشوار",
|
|
||||||
+ "Standard Call": "اتصال عادي",
|
|
||||||
"Share your experience to help us improve...":
|
|
||||||
"شاركنا تجربتك لنحسن خدمتنا...",
|
|
||||||
"Something went wrong. Please try again.": "صار غلط. جرب مرة تانية.",
|
|
||||||
@@ -271,6 +279,8 @@ class MyTranslation extends Translations {
|
|
||||||
"to arrive you.": "ليوصلك.",
|
|
||||||
"unknown": "غير معروف",
|
|
||||||
"wait 1 minute to recive message": "استنى دقيقة لتستلم الرسالة",
|
|
||||||
+ "Uses cellular network": "يستخدم شبكة الهاتف",
|
|
||||||
+ "Voice call over internet": "مكالمة صوتية عبر الإنترنت",
|
|
||||||
"with license plate": "برقم اللوحة",
|
|
||||||
"witout zero": "بدون صفر",
|
|
||||||
"you must insert token code": "لازم تدخل الكود",
|
|
||||||
@@ -16885,7 +16895,8 @@ class MyTranslation extends Translations {
|
|
||||||
"Support is Away": "سپورٹ اب دستیاب نہیں ہے",
|
|
||||||
"Support is currently Online": "سپورٹ اب آن لائن ہے",
|
|
||||||
"Voice Call": "صوتی کال",
|
|
||||||
- "We're here to help you 24/7": "ہم چوبیس گھنٹے آپ کی مدد کے لیے حاضر ہیں",
|
|
||||||
+ "We're here to help you 24/7":
|
|
||||||
+ "ہم چوبیس گھنٹے آپ کی مدد کے لیے حاضر ہیں",
|
|
||||||
"Working Hours:": "کام کے اوقات:",
|
|
||||||
"1 Passenger": "1 Passenger",
|
|
||||||
"2 Passengers": "2 Passengers",
|
|
||||||
@@ -18446,7 +18457,8 @@ class MyTranslation extends Translations {
|
|
||||||
"Support is Away": "सहायता अभी उपलब्ध नहीं है",
|
|
||||||
"Support is currently Online": "सहायता अभी ऑनलाइन है",
|
|
||||||
"Voice Call": "वॉइस कॉल",
|
|
||||||
- "We're here to help you 24/7": "हम आपकी सहायता के लिए 24/7 उपलब्ध हैं",
|
|
||||||
+ "We're here to help you 24/7":
|
|
||||||
+ "हम आपकी सहायता के लिए 24/7 उपलब्ध हैं",
|
|
||||||
"Working Hours:": "कार्य समय:",
|
|
||||||
"1 Passenger": "1 Passenger",
|
|
||||||
"2 Passengers": "2 Passengers",
|
|
||||||
diff --git a/siro_rider/lib/views/home/map_widget.dart/apply_order_widget.dart b/siro_rider/lib/views/home/map_widget.dart/apply_order_widget.dart
|
|
||||||
index 8168f4f..a0689dc 100644
|
|
||||||
--- a/siro_rider/lib/views/home/map_widget.dart/apply_order_widget.dart
|
|
||||||
+++ b/siro_rider/lib/views/home/map_widget.dart/apply_order_widget.dart
|
|
||||||
@@ -250,19 +250,23 @@ class ApplyOrderWidget extends StatelessWidget {
|
|
||||||
Row(
|
|
||||||
children: [
|
|
||||||
// صورة السائق (أصغر)
|
|
||||||
- Container(
|
|
||||||
- decoration: BoxDecoration(
|
|
||||||
- shape: BoxShape.circle,
|
|
||||||
- border: Border.all(
|
|
||||||
- color: AppColor.primaryColor.withOpacity(0.2), width: 2),
|
|
||||||
- ),
|
|
||||||
- child: CircleAvatar(
|
|
||||||
- radius: 22, // تصغير من 28 إلى 22
|
|
||||||
- backgroundColor: Colors.grey[200],
|
|
||||||
- backgroundImage: NetworkImage(
|
|
||||||
- '${AppLink.server}/portrate_captain_image/${controller.driverId}.jpg'),
|
|
||||||
- onBackgroundImageError: (_, __) =>
|
|
||||||
- const Icon(Icons.person, color: Colors.grey, size: 20),
|
|
||||||
+ GestureDetector(
|
|
||||||
+ onTap: () => _showDriverAvatarDialog(context, controller),
|
|
||||||
+ child: Container(
|
|
||||||
+ decoration: BoxDecoration(
|
|
||||||
+ shape: BoxShape.circle,
|
|
||||||
+ border: Border.all(
|
|
||||||
+ color: AppColor.primaryColor.withOpacity(0.2),
|
|
||||||
+ width: 2),
|
|
||||||
+ ),
|
|
||||||
+ child: CircleAvatar(
|
|
||||||
+ radius: 22, // تصغير من 28 إلى 22
|
|
||||||
+ backgroundColor: Colors.grey[200],
|
|
||||||
+ backgroundImage: NetworkImage(
|
|
||||||
+ '${AppLink.server}/portrate_captain_image/${controller.driverId}.jpg'),
|
|
||||||
+ onBackgroundImageError: (_, __) =>
|
|
||||||
+ const Icon(Icons.person, color: Colors.grey, size: 20),
|
|
||||||
+ ),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
|
|
||||||
@@ -299,6 +303,32 @@ class ApplyOrderWidget extends StatelessWidget {
|
|
||||||
),
|
|
||||||
],
|
|
||||||
),
|
|
||||||
+ const SizedBox(height: 5),
|
|
||||||
+ Wrap(
|
|
||||||
+ spacing: 6,
|
|
||||||
+ runSpacing: 4,
|
|
||||||
+ children: [
|
|
||||||
+ _buildDriverBadge(
|
|
||||||
+ icon: Icons.verified_rounded,
|
|
||||||
+ text: controller.driverTier.tr,
|
|
||||||
+ color: AppColor.primaryColor,
|
|
||||||
+ ),
|
|
||||||
+ if (controller.driverCompletedRides != '0')
|
|
||||||
+ _buildDriverBadge(
|
|
||||||
+ icon: Icons.route_rounded,
|
|
||||||
+ text:
|
|
||||||
+ '${controller.driverCompletedRides} ${'rides'.tr}',
|
|
||||||
+ color: Colors.teal,
|
|
||||||
+ ),
|
|
||||||
+ if (controller.driverRatingCount != '0')
|
|
||||||
+ _buildDriverBadge(
|
|
||||||
+ icon: Icons.reviews_rounded,
|
|
||||||
+ text:
|
|
||||||
+ '${controller.driverRatingCount} ${'reviews'.tr}',
|
|
||||||
+ color: Colors.amber.shade800,
|
|
||||||
+ ),
|
|
||||||
+ ],
|
|
||||||
+ ),
|
|
||||||
],
|
|
||||||
),
|
|
||||||
),
|
|
||||||
@@ -320,6 +350,11 @@ class ApplyOrderWidget extends StatelessWidget {
|
|
||||||
Widget _buildMicroCarIcon(
|
|
||||||
RideLifecycleController controller, Color Function(String) parseColor) {
|
|
||||||
Color carColor = parseColor(controller.colorHex);
|
|
||||||
+ final String vehicleText =
|
|
||||||
+ '${controller.model} ${controller.make}'.toLowerCase();
|
|
||||||
+ final bool isBike = vehicleText.contains('scooter') ||
|
|
||||||
+ vehicleText.contains('bike') ||
|
|
||||||
+ vehicleText.contains('دراجة');
|
|
||||||
return Container(
|
|
||||||
height: 40, // تصغير من 50
|
|
||||||
width: 40,
|
|
||||||
@@ -331,7 +366,8 @@ class ApplyOrderWidget extends StatelessWidget {
|
|
||||||
child: ColorFiltered(
|
|
||||||
colorFilter: ColorFilter.mode(carColor, BlendMode.srcIn),
|
|
||||||
child: Image.asset(
|
|
||||||
- box.read(BoxName.carType) == 'Scooter' ||
|
|
||||||
+ isBike ||
|
|
||||||
+ box.read(BoxName.carType) == 'Scooter' ||
|
|
||||||
box.read(BoxName.carType) == 'Pink Bike'
|
|
||||||
? 'assets/images/moto.png'
|
|
||||||
: 'assets/images/car3.png',
|
|
||||||
@@ -341,6 +377,81 @@ class ApplyOrderWidget extends StatelessWidget {
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
+ Widget _buildDriverBadge({
|
|
||||||
+ required IconData icon,
|
|
||||||
+ required String text,
|
|
||||||
+ required Color color,
|
|
||||||
+ }) {
|
|
||||||
+ return Container(
|
|
||||||
+ padding: const EdgeInsets.symmetric(horizontal: 7, vertical: 3),
|
|
||||||
+ decoration: BoxDecoration(
|
|
||||||
+ color: color.withOpacity(0.1),
|
|
||||||
+ borderRadius: BorderRadius.circular(10),
|
|
||||||
+ ),
|
|
||||||
+ child: Row(
|
|
||||||
+ mainAxisSize: MainAxisSize.min,
|
|
||||||
+ children: [
|
|
||||||
+ Icon(icon, size: 11, color: color),
|
|
||||||
+ const SizedBox(width: 4),
|
|
||||||
+ Text(
|
|
||||||
+ text,
|
|
||||||
+ style: TextStyle(
|
|
||||||
+ color: color,
|
|
||||||
+ fontSize: 10.5,
|
|
||||||
+ fontWeight: FontWeight.w800,
|
|
||||||
+ ),
|
|
||||||
+ ),
|
|
||||||
+ ],
|
|
||||||
+ ),
|
|
||||||
+ );
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ void _showDriverAvatarDialog(
|
|
||||||
+ BuildContext context, RideLifecycleController controller) {
|
|
||||||
+ final imageUrl =
|
|
||||||
+ '${AppLink.server}/portrate_captain_image/${controller.driverId}.jpg';
|
|
||||||
+ Get.dialog(
|
|
||||||
+ Dialog(
|
|
||||||
+ insetPadding: const EdgeInsets.symmetric(horizontal: 38),
|
|
||||||
+ shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(18)),
|
|
||||||
+ child: Padding(
|
|
||||||
+ padding: const EdgeInsets.fromLTRB(18, 20, 18, 18),
|
|
||||||
+ child: Column(
|
|
||||||
+ mainAxisSize: MainAxisSize.min,
|
|
||||||
+ children: [
|
|
||||||
+ CircleAvatar(
|
|
||||||
+ radius: 58,
|
|
||||||
+ backgroundColor: Colors.grey[200],
|
|
||||||
+ backgroundImage: NetworkImage(imageUrl),
|
|
||||||
+ onBackgroundImageError: (_, __) {},
|
|
||||||
+ ),
|
|
||||||
+ const SizedBox(height: 14),
|
|
||||||
+ Text(
|
|
||||||
+ controller.driverName,
|
|
||||||
+ textAlign: TextAlign.center,
|
|
||||||
+ style: AppStyle.title.copyWith(
|
|
||||||
+ fontSize: 18,
|
|
||||||
+ fontWeight: FontWeight.w900,
|
|
||||||
+ ),
|
|
||||||
+ ),
|
|
||||||
+ const SizedBox(height: 6),
|
|
||||||
+ Text(
|
|
||||||
+ '${controller.driverTier.tr} • ${controller.driverRate}',
|
|
||||||
+ textAlign: TextAlign.center,
|
|
||||||
+ style: TextStyle(
|
|
||||||
+ color: Colors.grey[700],
|
|
||||||
+ fontSize: 13,
|
|
||||||
+ fontWeight: FontWeight.w600,
|
|
||||||
+ ),
|
|
||||||
+ ),
|
|
||||||
+ ],
|
|
||||||
+ ),
|
|
||||||
+ ),
|
|
||||||
+ ),
|
|
||||||
+ barrierDismissible: true,
|
|
||||||
+ );
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
Widget _buildSlimLicensePlate(String plateNumber) {
|
|
||||||
return Container(
|
|
||||||
width: double.infinity,
|
|
||||||
4937
ride_controller.diff
4937
ride_controller.diff
File diff suppressed because it is too large
Load Diff
2209
siro_driver/lib/controller/local/ar_eg.dart
Normal file
2209
siro_driver/lib/controller/local/ar_eg.dart
Normal file
File diff suppressed because it is too large
Load Diff
2529
siro_driver/lib/controller/local/ar_jo.dart
Normal file
2529
siro_driver/lib/controller/local/ar_jo.dart
Normal file
File diff suppressed because it is too large
Load Diff
2879
siro_driver/lib/controller/local/ar_sy.dart
Normal file
2879
siro_driver/lib/controller/local/ar_sy.dart
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
2533
siro_driver_translations_data.json
Normal file
2533
siro_driver_translations_data.json
Normal file
File diff suppressed because it is too large
Load Diff
1644
siro_rider/lib/controller/local/ar_eg.dart
Normal file
1644
siro_rider/lib/controller/local/ar_eg.dart
Normal file
File diff suppressed because it is too large
Load Diff
1644
siro_rider/lib/controller/local/ar_jo.dart
Normal file
1644
siro_rider/lib/controller/local/ar_jo.dart
Normal file
File diff suppressed because it is too large
Load Diff
1644
siro_rider/lib/controller/local/ar_sy.dart
Normal file
1644
siro_rider/lib/controller/local/ar_sy.dart
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
1648
siro_rider_translations_data.json
Normal file
1648
siro_rider_translations_data.json
Normal file
File diff suppressed because it is too large
Load Diff
870
siro_service/lib/controller/local/ar_eg.dart
Normal file
870
siro_service/lib/controller/local/ar_eg.dart
Normal file
@@ -0,0 +1,870 @@
|
|||||||
|
final Map<String, String> ar_eg = {
|
||||||
|
" phone": " phone",
|
||||||
|
"\${'Please enter": "\${'Please enter",
|
||||||
|
"\${'Step": "\${'Step",
|
||||||
|
". I am at least 18 years of age.": "。我已年满 18 岁。",
|
||||||
|
"10 and get 4% discount": "满 10 即可享受 4% 折扣",
|
||||||
|
"100 and get 11% discount": "满 100 即可享受 11% 折扣",
|
||||||
|
"20 and get 6% discount": "满 20 即可享受 6% 折扣",
|
||||||
|
"40 and get 8% discount": "满 40 即可享受 8% 折扣",
|
||||||
|
"5 digit": "5位数字",
|
||||||
|
"\\\$": "\\\$",
|
||||||
|
"Accept Order": "接受订单",
|
||||||
|
"Accept Ride's Terms & Review Privacy Notice": "接受乘车条款并查看隐私声明",
|
||||||
|
"accepted your order": "已接受您的订单",
|
||||||
|
"Account Number": "رقم الحساب",
|
||||||
|
"Active Duration:": "活跃时间:",
|
||||||
|
"Add": "Add",
|
||||||
|
"Add car": "Add car",
|
||||||
|
"Add Car Who Wants to Work": "أضف السيارة التي ترغب في العمل",
|
||||||
|
"Add Card": "添加卡",
|
||||||
|
"Add Credit Card": "添加信用卡",
|
||||||
|
"Add Driver Who Wants to Work": "إضافة سائق يرغب في العمل",
|
||||||
|
"Add Location": "添加位置",
|
||||||
|
"Add Location 1": "添加位置 1",
|
||||||
|
"Add Location 2": "添加位置 2",
|
||||||
|
"Add Location 3": "添加位置 3",
|
||||||
|
"Add Location 4": "添加位置 4",
|
||||||
|
"Add Payment Method": "添加付款方式",
|
||||||
|
"Add Phone": "添加电话",
|
||||||
|
"Add Promo": "添加促销",
|
||||||
|
"Add Stops": "添加停靠点",
|
||||||
|
"Added successfully": "Added successfully",
|
||||||
|
"Additional comments": "تعليقات إضافية.",
|
||||||
|
"Address": "地址",
|
||||||
|
"Address:": "地址:",
|
||||||
|
"Admin DashBoard": "管理仪表板",
|
||||||
|
"After this period": "这段时间之后",
|
||||||
|
"Age": "年龄",
|
||||||
|
"Age is": "年龄是",
|
||||||
|
"AI Page": "人工智能页面",
|
||||||
|
"Alexandria": "Alexandria",
|
||||||
|
"An error occurred during the payment process.": "付款过程中发生错误。",
|
||||||
|
"An error occurred: \$error": "An error occurred: \$error",
|
||||||
|
"and I have a trip on": "我有一次旅行",
|
||||||
|
"And you will can't return to use app after 1 month": "1 个月后您将无法返回使用应用程序",
|
||||||
|
"App with Passenger": "乘客应用程序",
|
||||||
|
"app_description": "应用程序描述",
|
||||||
|
"Apply Order": "申请订单",
|
||||||
|
"Apply Ride": "Apply Ride",
|
||||||
|
"Are you sure to cancel?": "您确定要取消吗?",
|
||||||
|
"Are you sure to delete recorded files": "您确定要删除录音文件吗",
|
||||||
|
"Are you sure to delete your account?": "您确定要删除您的帐户吗?",
|
||||||
|
"Are you Sure to LogOut?": "您确定要退出吗?",
|
||||||
|
"are you sure to pay to this driver gift": "are you sure to pay to this driver gift",
|
||||||
|
"Are You sure to ride to": "您确定要乘车前往",
|
||||||
|
"Are you want to go this site": "你想去这个网站吗",
|
||||||
|
"Are you want to go to this site": "你想访问这个网站吗",
|
||||||
|
"Arrival time": "到达时间",
|
||||||
|
"arrival time to reach your point": "到达目的地的到达时间",
|
||||||
|
"as the driver.": "作为司机。",
|
||||||
|
"Associate Degree": "副学士学位",
|
||||||
|
"Available for rides": "可乘坐",
|
||||||
|
"Average of Hours of": "平均小时数",
|
||||||
|
"Average Rating": "التقييم المتوسط",
|
||||||
|
"Avg Passenger Rating": "متوسط تقييم الركاب",
|
||||||
|
"aاسْتِخْرَاج رُخْصَة السَّيَّارَة.": "是的。",
|
||||||
|
"Bachelor's Degree": "学士学位",
|
||||||
|
"Back": "后退",
|
||||||
|
"Bahrain": "巴林",
|
||||||
|
"Bank Code": "رمز البنك",
|
||||||
|
"Bank Information": "معلومات البنك",
|
||||||
|
"Be Slowly": "慢慢来",
|
||||||
|
"Be sure for take accurate images please": "请务必拍摄准确的图像",
|
||||||
|
"Best choice for comfort car and flexible route and stops point": "舒适用车、灵活路线和停靠点的最佳选择",
|
||||||
|
"best driver": "best driver",
|
||||||
|
"Best Drivers": "Best Drivers",
|
||||||
|
"Birth Date": "出生日期",
|
||||||
|
"Birthdate": "تاريخ الميلاد",
|
||||||
|
"black": "أسود",
|
||||||
|
"blue": "أزرق",
|
||||||
|
"BookingFee": "预订费",
|
||||||
|
"Bottom Bar Example": "底栏示例",
|
||||||
|
"Bronze": "برونزي",
|
||||||
|
"brown": "بني",
|
||||||
|
"But you have a negative salary of": "但你的工资为负数",
|
||||||
|
"By selecting 'I Agree' below, I have reviewed and agree to the Terms of Use and acknowledge the": "通过选择下面的“我同意”,我已阅读并同意使用条款并承认",
|
||||||
|
"By selecting 'I Agree' below, I have reviewed and agree to the Terms of Use and acknowledge the Privacy Notice. I am at least 18 years of age.": "选择下面的“我同意”,即表示我已查看并同意使用条款并承认隐私声明。我已年满 18 岁。",
|
||||||
|
"by this list below": "通过下面的列表",
|
||||||
|
"Call Driver": "اتصل بالسائق",
|
||||||
|
"Call End": "通话结束",
|
||||||
|
"Camera Access Denied.": "相机访问被拒绝。",
|
||||||
|
"Camera not initialized yet": "相机尚未初始化",
|
||||||
|
"Camera not initilaized yet": "相机尚未初始化",
|
||||||
|
"Can I cancel my ride?": "我可以取消行程吗?",
|
||||||
|
"Can we know why you want to cancel Ride ?": "我们可以知道您为什么要取消行程吗?",
|
||||||
|
"Cancel": "取消",
|
||||||
|
"Cancel Ride": "取消乘车",
|
||||||
|
"Cancel Trip": "取消行程",
|
||||||
|
"Canceled": "取消",
|
||||||
|
"Capture an Image of Your car license back": "拍回您的汽车驾照图像",
|
||||||
|
"Capture an Image of Your car license front": "拍摄您的汽车牌照正面的图像",
|
||||||
|
"Capture an Image of Your Criminal Record": "拍摄您的犯罪记录图像",
|
||||||
|
"Capture an Image of Your Driver License": "拍摄您的驾驶执照的图像",
|
||||||
|
"Capture an Image of Your Driver’s License": "拍摄您的驾驶执照的图像",
|
||||||
|
"Capture an Image of Your ID Document Back": "拍摄您的身份证件图像",
|
||||||
|
"Capture an Image of Your ID Document front": "拍摄您的身份证件正面的图像",
|
||||||
|
"Car Color": "Car Color",
|
||||||
|
"Car Details": "汽车详情",
|
||||||
|
"Car Kind": "汽车种类",
|
||||||
|
"Car License Card": "汽车牌照",
|
||||||
|
"Car Plate": "车牌",
|
||||||
|
"car plate": "car plate",
|
||||||
|
"Car Plate is": "车牌是",
|
||||||
|
"Car Type": "نوع السيارة",
|
||||||
|
"Card ID": "رقم بطاقة الهوية",
|
||||||
|
"Card Number": "卡号",
|
||||||
|
"CardID": "卡号",
|
||||||
|
"Categories": "التصنيفات",
|
||||||
|
"Champagne": "شامبان",
|
||||||
|
"Change Country": "Ülke değiştir",
|
||||||
|
"Changes saved successfully": "تم حفظ التغييرات بنجاح",
|
||||||
|
"Chassis": "机壳",
|
||||||
|
"Choose from Map": "从地图中选择",
|
||||||
|
"Choose Language": "选择语言",
|
||||||
|
"City": "城市",
|
||||||
|
"Click here point": "点击这里点",
|
||||||
|
"Click here to Show it in Map": "单击此处在地图中显示它",
|
||||||
|
"Closest & Cheapest": "最近且最便宜",
|
||||||
|
"Color": "颜色",
|
||||||
|
"Color is": "颜色是",
|
||||||
|
"committed_to_safety": "致力于安全",
|
||||||
|
"Complaints": "الشكاوى",
|
||||||
|
"Confirm": "确认",
|
||||||
|
"Confirm Selection": "确认选择",
|
||||||
|
"Connected": "连接的",
|
||||||
|
"Contact us for any questions on your order.": "如果您对订单有任何疑问,请联系我们。",
|
||||||
|
"Copy this Promo to use it in your Ride!": "复制此促销信息以在您的骑行中使用!",
|
||||||
|
"Cost Duration": "费用持续时间",
|
||||||
|
"Cost Of Trip IS": "旅行费用是",
|
||||||
|
"Counts of Hours on days": "每天的小时数",
|
||||||
|
"Create Wallet to receive your money": "创建钱包来接收您的钱",
|
||||||
|
"Created At": "أنشئ في",
|
||||||
|
"created time": "创建时间",
|
||||||
|
"Credit card is": "信用卡是",
|
||||||
|
"Criminal Record": "犯罪记录",
|
||||||
|
"Cropper": "农作物",
|
||||||
|
"Current Location": "当前位置",
|
||||||
|
"cyan": "سماوي",
|
||||||
|
"Dark Red": "نبيتي",
|
||||||
|
"Date": "تاريخ",
|
||||||
|
"Date of Birth": "出生日期",
|
||||||
|
"Date of Birth is": "出生日期是",
|
||||||
|
"Date of Birth:": "出生日期:",
|
||||||
|
"Days": "天",
|
||||||
|
"Delete My Account": "删除我的账户",
|
||||||
|
"Deleted": "已删除",
|
||||||
|
"Destination": "目的地",
|
||||||
|
"Destination selected": "已选择目的地",
|
||||||
|
"Detect Your Face": "检测你的脸",
|
||||||
|
"Displacement": "移位",
|
||||||
|
"Distance": "مسافة",
|
||||||
|
"Distance from Passenger to destination is": "乘客到目的地的距离为",
|
||||||
|
"distance is": "距离是",
|
||||||
|
"Distance is": "距离是",
|
||||||
|
"Distance of the Ride is": "骑行距离为",
|
||||||
|
"Distance To Passenger is": "到乘客的距离是",
|
||||||
|
"Do you want to change Home location": "您想更改家庭位置吗",
|
||||||
|
"Do you want to change Work location": "您想更改工作地点吗",
|
||||||
|
"Do you want to pay Tips for this Driver": "您想为此司机支付小费吗",
|
||||||
|
"Doctoral Degree": "博士学位",
|
||||||
|
"Document Number:": "文件号码:",
|
||||||
|
"Documents check": "文件检查",
|
||||||
|
"Done": "Done",
|
||||||
|
"Driver": "司机",
|
||||||
|
"Driver Applied the Ride for You": "司机为您申请行程",
|
||||||
|
"Driver Cancel Your Trip": "司机取消您的行程",
|
||||||
|
"Driver Car Plate": "司机车牌",
|
||||||
|
"Driver details by national number": "Driver details by national number",
|
||||||
|
"Driver details by phone": "تفاصيل السائق حسب رقم الهاتف",
|
||||||
|
"Driver Finish Trip": "司机完成行程",
|
||||||
|
"Driver has been activated successfully!": "Driver has been activated successfully!",
|
||||||
|
"Driver Information": "معلومات عن السائق",
|
||||||
|
"Driver Name": "司机姓名",
|
||||||
|
"Driver not found": "Driver not found",
|
||||||
|
"Driver phone": "司机电话",
|
||||||
|
"Driver Registration & Requirements": "司机注册和要求",
|
||||||
|
"Driver Statistics": "إحصاءات السائق",
|
||||||
|
"Driver Wallet": "司机钱包",
|
||||||
|
"Driver's License": "驾照",
|
||||||
|
"driver_license": "驾驶执照",
|
||||||
|
"Drivers Activity": "نشاط السائقين",
|
||||||
|
"Drivers Cant Register": "السائقون لا يستطيعون التسجيل",
|
||||||
|
"Drivers License Class": "驾驶执照等级",
|
||||||
|
"Drivers License Class:": "驾驶执照类别:",
|
||||||
|
"Drivers phones not register": "هواتف السائقين غير مسجلة",
|
||||||
|
"Drivers waitting Register": "السائقون في انتظار التسجيل",
|
||||||
|
"Drivers Want Register": "السائقون يريدون التسجيل",
|
||||||
|
"duration is": "持续时间是",
|
||||||
|
"Duration is": "持续时间是",
|
||||||
|
"Duration of the Ride is": "骑行持续时间为",
|
||||||
|
"Duration of Trip is": "行程持续时间为",
|
||||||
|
"Duration To Passenger is": "到达乘客的时间是",
|
||||||
|
"Edit car details": "Edit car details",
|
||||||
|
"Edit car plate": "تعديل لوحة السيارة",
|
||||||
|
"Edit Profile": "编辑个人资料",
|
||||||
|
"Edit Your data": "编辑您的数据",
|
||||||
|
"Education": "教育",
|
||||||
|
"Eggplant": "باذنجان",
|
||||||
|
"Egypt": "埃及",
|
||||||
|
"Email": "البريد الإلكتروني",
|
||||||
|
"Email is": "电子邮件是",
|
||||||
|
"Email Us": "给我们发电子邮件",
|
||||||
|
"Email Wrong": "电子邮件错误",
|
||||||
|
"Email you inserted is Wrong.": "您输入的电子邮件有误。",
|
||||||
|
"Employment": "عمل",
|
||||||
|
"Employment Type": "雇佣类型",
|
||||||
|
"End Ride": "结束骑行",
|
||||||
|
"End Time": "وقت الانتهاء",
|
||||||
|
"Enjoy a safe and comfortable ride.": "享受安全舒适的乘车体验。",
|
||||||
|
"Enter notes after call": "أدخل الملاحظات بعد المكالمة",
|
||||||
|
"Enter notes here...": "أدخل الملاحظات هنا...",
|
||||||
|
"Enter promo code": "输入促销代码",
|
||||||
|
"Enter your email address": "输入你的电子邮箱地址",
|
||||||
|
"Enter your feedback here": "在此输入您的反馈",
|
||||||
|
"Enter your first name": "输入您的名字",
|
||||||
|
"Enter Your First Name": "输入您的名字",
|
||||||
|
"Enter your last name": "输入您的姓氏",
|
||||||
|
"Enter your Note": "输入您的备注",
|
||||||
|
"Enter your phone number": "输入你的电话号码",
|
||||||
|
"Error": "错误",
|
||||||
|
"Error', 'Failed to send OTP": "Error', 'Failed to send OTP",
|
||||||
|
"Error', 'Invalid OTP": "Error', 'Invalid OTP",
|
||||||
|
"Evening": "晚上",
|
||||||
|
"Exclusive offers and discounts always with the Sefer app": "Sefer 应用程序始终提供独家优惠和折扣",
|
||||||
|
"Expiration Date": "截止日期",
|
||||||
|
"Expiry Date": "到期日",
|
||||||
|
"Expiry Date:": "到期日:",
|
||||||
|
"Failed to update driver: \${decodedResponse is Map ? decodedResponse['message'] : 'failure'}": "Failed to update driver: \${decodedResponse is Map ? decodedResponse['message'] : 'failure'}",
|
||||||
|
"Favorite Places": "最喜欢的地方",
|
||||||
|
"Fee is": "费用为",
|
||||||
|
"Feed Back": "反馈",
|
||||||
|
"Feedback": "反馈",
|
||||||
|
"Feedback data saved successfully": "反馈数据保存成功",
|
||||||
|
"Female": "女性",
|
||||||
|
"First Name": "名",
|
||||||
|
"First name": "名",
|
||||||
|
"Flag-down fee": "降旗费",
|
||||||
|
"For Speed and Delivery trips, the price is calculated dynamically. For Comfort trips, the price is based on time and distance": "对于速度和送货行程,价格是动态计算的。对于舒适旅行,价格根据时间和距离而定",
|
||||||
|
"Frequently Questions": "常见问题",
|
||||||
|
"from 07:30 till 10:30 (Thursday, Friday, Saturday, Monday)": "07:30 至 10:30(周四、周五、周六、周一)",
|
||||||
|
"from 12:00 till 15:00 (Thursday, Friday, Saturday, Monday)": "12:00 至 15:00(周四、周五、周六、周一)",
|
||||||
|
"from 23:59 till 05:30": "23:59 至 05:30",
|
||||||
|
"from 3 times Take Attention": "3次起 注意",
|
||||||
|
"From :": "从 :",
|
||||||
|
"From : Current Location": "来自 : 当前位置",
|
||||||
|
"from your list": "从你的清单中",
|
||||||
|
"Fuel": "燃料",
|
||||||
|
"Fuel Type": "نوع الوقود",
|
||||||
|
"Full Name": "全名",
|
||||||
|
"Full Name (Marital)": "全名(婚姻)",
|
||||||
|
"FullName": "全名",
|
||||||
|
"Gender": "性别",
|
||||||
|
"Get Details of Trip": "获取行程详情",
|
||||||
|
"Get Direction": "得到指引",
|
||||||
|
"Get to your destination quickly and easily.": "快速、轻松地到达目的地。",
|
||||||
|
"get_a_ride": "搭个便车",
|
||||||
|
"get_to_destination": "到达目的地",
|
||||||
|
"Giza": "Giza",
|
||||||
|
"Go To Favorite Places": "去最喜欢的地方",
|
||||||
|
"Go to next step": "进入下一步",
|
||||||
|
"Go to passenger Location now": "立即前往乘客位置",
|
||||||
|
"Go to this Target": "前往该目标",
|
||||||
|
"go to your passenger location before": "前往您的乘客位置之前",
|
||||||
|
"gold": "ذهبي",
|
||||||
|
"GPS Required Allow !.": "需要 GPS 允许!。",
|
||||||
|
"gray": "رمادي",
|
||||||
|
"green": "أخضر",
|
||||||
|
"H and": "手",
|
||||||
|
"Height:": "高度:",
|
||||||
|
"Hello this is Captain": "你好,这是队长",
|
||||||
|
"Hello this is Driver": "你好,这是司机",
|
||||||
|
"Hello, I'm at the agreed-upon location": "你好,我已经到了约定的地点",
|
||||||
|
"Help Details": "帮助详情",
|
||||||
|
"Helping Center": "帮助中心",
|
||||||
|
"Here recorded trips audio": "这里记录了旅行音频",
|
||||||
|
"Hi": "你好",
|
||||||
|
"Hi ,I Arrive your site": "你好,我到达你的网站",
|
||||||
|
"Hi ,I will go now": "嗨,我现在就去",
|
||||||
|
"Hi! This is": "你好!这是",
|
||||||
|
"Hi, Where to": "你好,去哪里",
|
||||||
|
"High School Diploma": "高中毕业文凭",
|
||||||
|
"History of Trip": "旅行历史",
|
||||||
|
"Home": "家",
|
||||||
|
"Home Page": "主页",
|
||||||
|
"Home Saved": "已保存首页",
|
||||||
|
"How can I pay for my ride?": "我如何支付乘车费用?",
|
||||||
|
"How can I register as a driver?": "我如何注册成为司机?",
|
||||||
|
"How do I communicate with the other party (passenger/driver)?": "如何与对方(乘客/司机)沟通?",
|
||||||
|
"How do I request a ride?": "我如何叫车?",
|
||||||
|
"I added the wrong pick-up/drop-off location": "我添加了错误的接送地点",
|
||||||
|
"I Agree": "我同意",
|
||||||
|
"I am currently located at": "我目前位于",
|
||||||
|
"I am using": "我在用",
|
||||||
|
"I arrive you": "我到达你",
|
||||||
|
"I Arrive your site": "我到达你的网站",
|
||||||
|
"I cant register in your app in face detection": "我无法在您的应用程序中注册人脸检测",
|
||||||
|
"I don't have a reason": "我没有理由",
|
||||||
|
"I don't have a suitable vehicle": "ليس لدي مركبة مناسبة",
|
||||||
|
"I don't need a ride anymore": "我不再需要搭车了",
|
||||||
|
"I need more help understanding the app": "أحتاج إلى المزيد من المساعدة لفهم التطبيق",
|
||||||
|
"I was just trying the application": "我只是在尝试该应用程序",
|
||||||
|
"I will go now": "我要走了",
|
||||||
|
"I will slow down": "我会放慢脚步",
|
||||||
|
"I'll register when the app is fully launched": "سأسجل عندما يتم إطلاق التطبيق بالكامل",
|
||||||
|
"I'm not ready yet": "لست جاهزًا بعد",
|
||||||
|
"I'm waiting for you": "我在等你",
|
||||||
|
"ID Documents Back": "身份证件 返回",
|
||||||
|
"ID Documents Front": "身份证件正面",
|
||||||
|
"if you don\\\"t have account": "如果您没有帐户",
|
||||||
|
"if you dont have account": "如果您没有帐户",
|
||||||
|
"If you in Car Now. Press Start The Ride": "如果你现在在车里。按开始骑行",
|
||||||
|
"If you need to reach me, please contact the driver directly at": "如果您需要联系我,请直接联系司机",
|
||||||
|
"If you want add stop click here": "如果您想添加停靠站,请单击此处",
|
||||||
|
"if you want help you can email us here": "如果您需要帮助,您可以在这里给我们发电子邮件",
|
||||||
|
"If you want to make Google Map App run directly when you apply order": "如果您想让Google Map App在申请订单时直接运行",
|
||||||
|
"Image detecting result is": "图像检测结果为",
|
||||||
|
"Image not available": "Image not available",
|
||||||
|
"Image Upload Failed": "Image Upload Failed",
|
||||||
|
"image verified": "图像已验证",
|
||||||
|
"in your": "在你的",
|
||||||
|
"in your wallet": "在你的钱包里",
|
||||||
|
"Inatleq Service": "Inatleq Service",
|
||||||
|
"Including Tax": "含税",
|
||||||
|
"Increase Fee": "增加费用",
|
||||||
|
"indigo": "نيلي",
|
||||||
|
"Insert": "插入",
|
||||||
|
"insert amount": "插入量",
|
||||||
|
"Insert birth_date of Driver": "أدخل تاريخ ميلاد السائق",
|
||||||
|
"Insert car_model of Driver": "أدخل طراز السيارة للسائق",
|
||||||
|
"Insert car_number of Driver": "أدخل رقم سيارة السائق",
|
||||||
|
"Insert car_type of Driver": "أدخل نوع السيارة للسائق",
|
||||||
|
"insert Driver national": "insert Driver national",
|
||||||
|
"insert Driver phone": "أدخل رقم هاتف السائق",
|
||||||
|
"Insert Emergincy Number": "插入紧急号码",
|
||||||
|
"Insert license type of Driver": "أدخل نوع رخصة السائق",
|
||||||
|
"Insert Name of Driver": "أدخل اسم السائق",
|
||||||
|
"Insert Name of Owner": "أدخل اسم المالك",
|
||||||
|
"Insert national ID of Driver": "أدخل الرقم الوطني للسائق",
|
||||||
|
"insert passenger phone": "أدخل رقم هاتف الراكب",
|
||||||
|
"Insert phone of Driver": "أدخل رقم هاتف السائق",
|
||||||
|
"Insert phone of Owner": "أدخل هاتف المالك",
|
||||||
|
"Insert registration_date of Car": "أدخل تاريخ تسجيل السيارة",
|
||||||
|
"Insert registration_date of Driver": "",
|
||||||
|
"Insert site of Driver": "أدخل موقع السائق",
|
||||||
|
"Insert site of Owner": "أدخل موقع المالك",
|
||||||
|
"Insert year of Car": "أدخل سنة السيارة",
|
||||||
|
"Inspection Date": "检验日期",
|
||||||
|
"InspectionResult": "检查结果",
|
||||||
|
"Invalid MPIN": "MPIN 无效",
|
||||||
|
"Invalid OTP": "无效一次性密码",
|
||||||
|
"is driving a": "正在驾驶",
|
||||||
|
"is ON for this month": "本月已开启",
|
||||||
|
"Is the Passenger in your Car ?": "乘客在你的车里吗?",
|
||||||
|
"Issue Date": "签发日期",
|
||||||
|
"IssueDate": "签发日期",
|
||||||
|
"Issues": "Issues",
|
||||||
|
"JOD": "乔德",
|
||||||
|
"Join": "加入",
|
||||||
|
"Jordan": "约旦",
|
||||||
|
"KM": "知识管理",
|
||||||
|
"Kuwait": "科威特",
|
||||||
|
"Language": "语言",
|
||||||
|
"Last name": "姓",
|
||||||
|
"Last Payment Amount": "مبلغ آخر دفعة",
|
||||||
|
"Last Payment Method": "آخر طريقة دفع",
|
||||||
|
"Latest Recent Trip": "最近最近的旅行",
|
||||||
|
"Latest Ride": "أحدث رحلة",
|
||||||
|
"LE": "LE",
|
||||||
|
"Leave": "离开",
|
||||||
|
"Lets check Car license": "让我们检查一下汽车牌照",
|
||||||
|
"Lets check License Back Face": "让我们检查许可证背面",
|
||||||
|
"License Categories": "许可证类别",
|
||||||
|
"License Information": "معلومات الرخصة",
|
||||||
|
"License Type": "许可证类型",
|
||||||
|
"lime": "ليموني",
|
||||||
|
"Log Off": "注销",
|
||||||
|
"Log Out Page": "注销页面",
|
||||||
|
"Login": "登录",
|
||||||
|
"Login Captin": "登录队长",
|
||||||
|
"Login Driver": "登录驱动程序",
|
||||||
|
"m": "米",
|
||||||
|
"Made :": "制成 :",
|
||||||
|
"magenta": "بنفسجي",
|
||||||
|
"Make": "制作",
|
||||||
|
"Make is": "品牌是",
|
||||||
|
"Male": "男性",
|
||||||
|
"Map Passenger": "地图乘客",
|
||||||
|
"Marital Status": "婚姻状况",
|
||||||
|
"Maroon": "ماروني",
|
||||||
|
"Master's Degree": "硕士",
|
||||||
|
"Maximum fare": "最高票价",
|
||||||
|
"message From passenger": "乘客留言",
|
||||||
|
"message'].toString().tr : 'فشل تسجيل الدخول": "message'].toString().tr : 'فشل تسجيل الدخول",
|
||||||
|
"Minimum fare": "最低票价",
|
||||||
|
"Minute": "分钟",
|
||||||
|
"Minutes": "分钟",
|
||||||
|
"Mocha": "موكا",
|
||||||
|
"Model": "模型",
|
||||||
|
"model :": "模型 :",
|
||||||
|
"Model is": "型号是",
|
||||||
|
"Morning": "早晨",
|
||||||
|
"Multiplier": "مضاعف",
|
||||||
|
"My Card": "我的卡",
|
||||||
|
"My Cared": "我的关心",
|
||||||
|
"My current location is:": "我当前的位置是:",
|
||||||
|
"My documents have expired": "وثائقي منتهية الصلاحية",
|
||||||
|
"my location": "我的位置",
|
||||||
|
"My location is correct. You can search for me using the navigation app": "我的位置是正确的。您可以使用导航应用程序搜索我",
|
||||||
|
"My Profile": "我的简历",
|
||||||
|
"My Wallet": "我的钱包",
|
||||||
|
"MyLocation": "我的位置",
|
||||||
|
"N/A": "不适用",
|
||||||
|
"Name": "姓名",
|
||||||
|
"Name (Arabic)": "姓名(阿拉伯语)",
|
||||||
|
"Name (English)": "姓名(英文)",
|
||||||
|
"Name :": "姓名 :",
|
||||||
|
"Name Arabic": "Name Arabic",
|
||||||
|
"Name English": "Name English",
|
||||||
|
"Name in arabic": "阿拉伯语名称",
|
||||||
|
"Name of the Passenger is": "乘客姓名是",
|
||||||
|
"National ID": "国民身份证",
|
||||||
|
"National Number": "国家号码",
|
||||||
|
"NationalID": "国民身份证",
|
||||||
|
"navy": "كحلي",
|
||||||
|
"Nearest Car for you about": "距离您最近的汽车",
|
||||||
|
"New": "New",
|
||||||
|
"Next": "下一个",
|
||||||
|
"Night": "夜晚",
|
||||||
|
"No ,still Waiting.": "不,还在等待。",
|
||||||
|
"No accepted orders? Try raising your trip fee to attract riders.": "没有接受订单?尝试提高行程费用以吸引乘客。",
|
||||||
|
"No Car found yet": "No Car found yet",
|
||||||
|
"No Car in your site. Sorry!": "您的网站上没有汽车。对不起!",
|
||||||
|
"No Car or Driver Found in your area.": "在您所在的地区找不到汽车或司机。",
|
||||||
|
"No driver accepted my request": "没有司机接受我的请求",
|
||||||
|
"No drivers found": "No drivers found",
|
||||||
|
"No face detected": "未检测到人脸",
|
||||||
|
"No I want": "不,我想",
|
||||||
|
"No image selected yet": "尚未选择图像",
|
||||||
|
"No Promo for today .": "今天没有促销。",
|
||||||
|
"No Response yet.": "尚未回复。",
|
||||||
|
"No ride found yet": "尚未找到乘车路线",
|
||||||
|
"No SIM card, no problem! Call your driver directly through our app. We use advanced technology to ensure your privacy.": "没有SIM卡,没问题!通过我们的应用程序直接致电您的司机。我们使用先进的技术来确保您的隐私。",
|
||||||
|
"No trip yet found": "尚未找到行程",
|
||||||
|
"No, thanks": "不,谢谢",
|
||||||
|
"No,I want": "不,我想",
|
||||||
|
"Not Connected": "未连接",
|
||||||
|
"Not found any image": "لم يتم العثور على أي صورة",
|
||||||
|
"note'] ?? 'Enter notes after call": "note'] ?? 'Enter notes after call",
|
||||||
|
"Notes": "ملاحظات",
|
||||||
|
"notes'] ?? 'Enter notes here...": "notes'] ?? 'Enter notes here...",
|
||||||
|
"Notes:": "ملاحظات:",
|
||||||
|
"Notifications": "通知",
|
||||||
|
"Now select start pick": "现在选择开始选择",
|
||||||
|
"Occupation": "职业",
|
||||||
|
"of": "of",
|
||||||
|
"Ok": "好的",
|
||||||
|
"Ok , See you Tomorrow": "好的明天见",
|
||||||
|
"Open Settings": "打开设置",
|
||||||
|
"orange": "برتقالي",
|
||||||
|
"Order": "Order",
|
||||||
|
"Order Applied": "已应用订单",
|
||||||
|
"Order Cancelled": "订单已取消",
|
||||||
|
"Order Cancelled by Passenger": "乘客取消订单",
|
||||||
|
"Order Details Speed": "订单详情 速度",
|
||||||
|
"Order History": "订单历史",
|
||||||
|
"Order Request Page": "订单请求页面",
|
||||||
|
"OrderId": "订单号",
|
||||||
|
"Origin": "起源",
|
||||||
|
"Other": "其他",
|
||||||
|
"Owner": "Owner",
|
||||||
|
"Owner Name": "业主姓名",
|
||||||
|
"Passenger Cancel Trip": "乘客取消行程",
|
||||||
|
"Passenger cancel trip": "乘客取消行程",
|
||||||
|
"Passenger come to you": "乘客来找你",
|
||||||
|
"passenger details by phone": "تفاصيل الراكب حسب رقم الهاتف",
|
||||||
|
"Passenger name :": "乘客姓名:",
|
||||||
|
"Passenger Name is": "乘客姓名是",
|
||||||
|
"Passenger not found": "Passenger not found",
|
||||||
|
"Passenger Not Found": "Passenger Not Found",
|
||||||
|
"Passengers Cant Register": "الركاب لا يستطيعون التسجيل",
|
||||||
|
"Passengers Rated": "تقييمات الركاب",
|
||||||
|
"Password must br at least 6 character.": "密码必须至少包含 6 个字符。",
|
||||||
|
"Pay from my budget": "从我的预算中支付",
|
||||||
|
"Pay with Credit Card": "使用信用卡支付",
|
||||||
|
"Pay with Wallet": "使用钱包支付",
|
||||||
|
"Pay with Your": "用您的支付",
|
||||||
|
"Pay with Your PayPal": "使用 PayPal 付款",
|
||||||
|
"Payment Failed": "支付失败",
|
||||||
|
"Payment History": "支付历史",
|
||||||
|
"Payment Method": "付款方式",
|
||||||
|
"Payment Successful": "支付成功",
|
||||||
|
"Pending": "Pending",
|
||||||
|
"Perfect for adventure seekers who want to experience something new and exciting": "非常适合想要体验新鲜刺激的冒险爱好者",
|
||||||
|
"Personal Information": "معلومات شخصية",
|
||||||
|
"Phone": "رقم الهاتف",
|
||||||
|
"Phone Number": "رقم الهاتف",
|
||||||
|
"Phone Number is": "电话号码是",
|
||||||
|
"Pick from map": "从地图上选择",
|
||||||
|
"Pick your destination from Map": "从地图中选择您的目的地",
|
||||||
|
"Pick your ride location on the map - Tap to confirm": "在地图上选择您的乘车地点 - 点击确认",
|
||||||
|
"pink": "وردي",
|
||||||
|
"Plate Number": "车牌号码",
|
||||||
|
"Please enter": "请输入",
|
||||||
|
"Please enter a phone number": "请输入电话号码",
|
||||||
|
"Please enter a valid 16-digit card number": "请输入有效的 16 位卡号",
|
||||||
|
"Please enter a valid email.": "Please enter a valid email.",
|
||||||
|
"Please enter a valid phone number.": "Please enter a valid phone number.",
|
||||||
|
"Please enter a value": "Please enter a value",
|
||||||
|
"Please enter the cardholder name": "请输入持卡人姓名",
|
||||||
|
"Please enter the CVV code": "请输入CVV码",
|
||||||
|
"Please enter the expiry date": "请输入有效期",
|
||||||
|
"Please enter your City.": "请输入您的城市。",
|
||||||
|
"Please enter Your Email.": "请输入您的电子邮件。",
|
||||||
|
"Please enter your feedback.": "请输入您的反馈。",
|
||||||
|
"Please enter your first name.": "请输入您的名字。",
|
||||||
|
"Please enter your last name.": "请输入您的姓氏。",
|
||||||
|
"Please enter Your Password.": "请输入您的密码。",
|
||||||
|
"Please enter your phone number.": "请输入您的电话号码。",
|
||||||
|
"Please enter your Question.": "请输入您的问题。",
|
||||||
|
"Please go to Car Driver": "请前往汽车司机",
|
||||||
|
"Please go to Car now": "请立即前往汽车",
|
||||||
|
"please go to picker location exactly": "请准确前往选取器位置",
|
||||||
|
"Please help! Contact me as soon as possible.": "请帮忙!尽快联系我。",
|
||||||
|
"Please put your licence in these border": "请将您的驾照放在这些边框内",
|
||||||
|
"Please stay on the picked point.": "请留在选定的点上。",
|
||||||
|
"Please Try anther time": "请稍后尝试",
|
||||||
|
"Please wait for the passenger to enter the car before starting the trip.": "请等待乘客上车后再开始行程。",
|
||||||
|
"Please Wait If passenger want To Cancel!": "如果旅客想取消,请稍候!",
|
||||||
|
"please wait till driver accept your order": "请等待司机接受您的订单",
|
||||||
|
"Point": "观点",
|
||||||
|
"Price": "السعر",
|
||||||
|
"price is": "价格是",
|
||||||
|
"Privacy Notice": "隐私声明",
|
||||||
|
"Profile": "轮廓",
|
||||||
|
"Promo Code": "促销代码",
|
||||||
|
"Promo End !": "促销结束!",
|
||||||
|
"Promos": "促销",
|
||||||
|
"Promos For today": "今天的促销",
|
||||||
|
"purple": "أرجواني",
|
||||||
|
"Pyament Cancelled .": "皮亚门特已取消。",
|
||||||
|
"Qatar": "卡塔尔",
|
||||||
|
"Quick Communication": "Quick Communication",
|
||||||
|
"Quick Search...": "Quick Search...",
|
||||||
|
"Rate Captain": "评分队长",
|
||||||
|
"Rate Driver": "费率驱动因素",
|
||||||
|
"Rate Passenger": "票价乘客",
|
||||||
|
"Rating is": "评级为",
|
||||||
|
"raw gray": "رمادي ",
|
||||||
|
"Recharge my Account": "为我的帐户充值",
|
||||||
|
"Record saved": "记录已保存",
|
||||||
|
"red": "أحمر",
|
||||||
|
"Refuse Order": "拒绝订单",
|
||||||
|
"Register": "登记",
|
||||||
|
"Register as Driver": "注册成为司机",
|
||||||
|
"Register Captin": "注册队长",
|
||||||
|
"Register Driver": "注册驱动程序",
|
||||||
|
"Register new driver": "تسجيل سائق جديد",
|
||||||
|
"Registration Date": "تاريخ التسجيل",
|
||||||
|
"reject your order.": "拒绝您的订单。",
|
||||||
|
"Religion": "宗教",
|
||||||
|
"Ride ID": "معرف الرحلة",
|
||||||
|
"Ride Summaries": "骑行总结",
|
||||||
|
"Ride Summary": "骑行总结",
|
||||||
|
"Ride Today :": "今天骑行:",
|
||||||
|
"Ride Wallet": "骑行钱包",
|
||||||
|
"Rouats of Trip": "旅行路线",
|
||||||
|
"safe_and_comfortable": "安全舒适",
|
||||||
|
"Saudi Arabia": "沙特阿拉伯",
|
||||||
|
"Save and Activate": "Save and Activate",
|
||||||
|
"Save Changes": "حفظ التغييرات",
|
||||||
|
"Save Credit Card": "保存信用卡",
|
||||||
|
"Save Notes": "حفظ الملاحظات",
|
||||||
|
"Saved Sucssefully": "保存成功",
|
||||||
|
"Scam Reports": "تقارير الاحتيال",
|
||||||
|
"scan Car License.": "扫描汽车驾照。",
|
||||||
|
"Scan Driver License": "扫描驾驶执照",
|
||||||
|
"Scan Id": "扫描 ID",
|
||||||
|
"Scan ID MklGoogle": "扫描 ID MklGoogle",
|
||||||
|
"Search by phone number": "Search by phone number",
|
||||||
|
"Search Details": "Search Details",
|
||||||
|
"Search for waypoint": "搜索航点",
|
||||||
|
"Search for your destination": "搜索您的目的地",
|
||||||
|
"Search for your Start point": "搜索您的起点",
|
||||||
|
"See you Tomorrow!": "明天见!",
|
||||||
|
"Sefer is committed to safety, and all of our captains are carefully screened and background checked.": "Sefer 致力于安全,我们所有的船长都经过仔细的筛选和背景调查。",
|
||||||
|
"Sefer is the ride-hailing app that is safe, reliable, and accessible.": "Sefer 是一款安全、可靠且易于使用的叫车应用程序。",
|
||||||
|
"Sefer offers a variety of vehicle options to suit your needs, including economy, comfort, and luxury. Choose the option that best fits your budget and passenger count.": "Sefer 提供多种车辆选择以满足您的需求,包括经济型、舒适型和豪华型。选择最适合您的预算和乘客数量的选项。",
|
||||||
|
"Sefer offers multiple payment methods for your convenience. Choose between cash payment or credit/debit card payment during ride confirmation.": "Sefer 提供多种付款方式,方便您使用。在行程确认时选择现金付款或信用卡/借记卡付款。",
|
||||||
|
"Sefer prioritizes your safety. We offer features like driver verification, in-app trip tracking, and emergency contact options.": "Sefer 将您的安全放在首位。我们提供驾驶员验证、应用内行程跟踪和紧急联系选项等功能。",
|
||||||
|
"Sefer provides in-app chat functionality to allow you to communicate with your driver or passenger during your ride.": "Sefer 提供应用内聊天功能,让您在乘车期间与司机或乘客进行交流。",
|
||||||
|
"Sefer Service": "خدمة سفر",
|
||||||
|
"Select Country": "选择国家",
|
||||||
|
"Select Date": "选择日期",
|
||||||
|
"Select one message": "选择一条消息",
|
||||||
|
"Select recorded trip": "选择记录的行程",
|
||||||
|
"Select Your Country": "选择您的国家/地区",
|
||||||
|
"Select your destination": "选择您的目的地",
|
||||||
|
"Selected file:": "选定的文件:",
|
||||||
|
"send": "send",
|
||||||
|
"Send Verfication Code": "发送验证码",
|
||||||
|
"Send Verification Code": "发送验证码",
|
||||||
|
"Server Error": "Server Error",
|
||||||
|
"Service Agent": "Service Agent",
|
||||||
|
"Settings": "设置",
|
||||||
|
"Sex is": "性别是",
|
||||||
|
"Share Trip Details": "分享行程详情",
|
||||||
|
"Show latest promo": "显示最新促销",
|
||||||
|
"Show Promos": "显示促销",
|
||||||
|
"Show Promos to Charge": "显示促销活动以收费",
|
||||||
|
"Sign In by Apple": "通过 Apple 登录",
|
||||||
|
"Sign In by Google": "通过谷歌登录",
|
||||||
|
"Sign in with Google for easier email and name entry": "使用 Google 登录以更轻松地输入电子邮件和姓名",
|
||||||
|
"Sign Out": "登出",
|
||||||
|
"silver": "فضي",
|
||||||
|
"Siro Service": "Siro Service",
|
||||||
|
"Sky Blue": "أزرق سماوي",
|
||||||
|
"So go and gain your money": "所以去赚你的钱吧",
|
||||||
|
"SOS Phone": "求救电话",
|
||||||
|
"Speed Over": "超速",
|
||||||
|
"Start Record": "开始记录",
|
||||||
|
"Start the Ride": "开始骑行",
|
||||||
|
"Start Time": "وقت البدء",
|
||||||
|
"Statistics": "统计数据",
|
||||||
|
"Status": "حالة",
|
||||||
|
"Step-by-step instructions on how to request a ride through the Sefer app.": "有关如何通过 Sefer 应用叫车的分步说明。",
|
||||||
|
"Submit": "提交",
|
||||||
|
"Submit Question": "提交问题",
|
||||||
|
"Submit rating": "提交评分",
|
||||||
|
"Success": "成功",
|
||||||
|
"Switch Rider": "开关骑手",
|
||||||
|
"Syrian Documents Check": "Syrian Documents Check",
|
||||||
|
"Take Image": "拍摄图像",
|
||||||
|
"Take Picture Of Driver License Card": "拍摄驾驶执照卡的照片",
|
||||||
|
"Take Picture Of ID Card": "拍摄身份证照片",
|
||||||
|
"Target": "目标",
|
||||||
|
"Tariff": "关税",
|
||||||
|
"Tariffs": "关税",
|
||||||
|
"Tax Expiry Date": "纳税到期日",
|
||||||
|
"teal": "تركوازي",
|
||||||
|
"Thanks": "谢谢",
|
||||||
|
"thanks": "thanks",
|
||||||
|
"the 300 points equal 300 L.E": "300 点等于 300 L.E",
|
||||||
|
"the 300 points equal 300 L.E for you": "300 点等于 300 L.E",
|
||||||
|
"the 500 points equal 30 JOD": "500 点等于 30 JOD",
|
||||||
|
"the 500 points equal 30 JOD for you": "500 积分等于 30 JOD 给您",
|
||||||
|
"The distance less than 500 meter.": "距离小于500米。",
|
||||||
|
"The driver accept your order for": "司机接受您的订单",
|
||||||
|
"The driver on your way": "司机正在路上",
|
||||||
|
"The driver waitting you in picked location .": "司机在指定地点等候您。",
|
||||||
|
"The Driver Will be in your location soon .": "司机很快就会到达您所在的位置。",
|
||||||
|
"The email or phone number is already registered.": "该电子邮件或电话号码已被注册。",
|
||||||
|
"The full name on your criminal record does not match the one on your driver’s license. Please verify and provide the correct documents.": "您犯罪记录上的全名与您驾驶执照上的全名不符。请核实并提供正确的文件。",
|
||||||
|
"The national number on your driver’s license does not match the one on your ID document. Please verify and provide the correct documents.": "您的驾驶执照上的国家号码与您的身份证件上的号码不匹配。请核实并提供正确的文件。",
|
||||||
|
"The payment was approved.": "付款已获批准。",
|
||||||
|
"The payment was not approved. Please try again.": "付款未获批准。请再试一次。",
|
||||||
|
"There is no data yet.": "还没有数据。",
|
||||||
|
"There is no help Question here": "这里没有帮助问题",
|
||||||
|
"There is no notification yet": "目前还没有通知",
|
||||||
|
"There no Driver Aplly your order sorry for that": "没有司机申请您的订单,对此深表歉意",
|
||||||
|
"This amount for all trip I get from Passengers": "我从乘客那里得到的所有行程的金额",
|
||||||
|
"This amount for all trip I get from Passengers and Collected For me in": "这笔金额是我从乘客处获得并为我收取的所有行程的金额",
|
||||||
|
"This is for delivery or a motorcycle.": "这是用于送货或摩托车。",
|
||||||
|
"This price may be changed": "此价格可能会更改",
|
||||||
|
"This ride type allows changes, but the price may increase": "此行程类型允许更改,但价格可能会上涨",
|
||||||
|
"This ride type does not allow changes to the destination or additional stops": "此行程类型不允许更改目的地或增加停靠站",
|
||||||
|
"This trip goes directly from your starting point to your destination for a fixed price. The driver must follow the planned route": "此行程以固定价格直接从您的出发地前往目的地。司机必须按照计划的路线行驶",
|
||||||
|
"this will delete all files from your device": "这将从您的设备中删除所有文件",
|
||||||
|
"Time to arrive": "到达时间",
|
||||||
|
"Tip is": "提示是",
|
||||||
|
"tips": "尖端",
|
||||||
|
"To :": "到 :",
|
||||||
|
"to arrive you.": "到达你身边。",
|
||||||
|
"To become a ride-sharing driver on the Sefer app, you need to upload your driver\\\"s license, ID document, and car registration document. Our AI system will instantly review and verify their authenticity in just 2-3 minutes. If your documents are approved, you can start working as a driver on the Sefer app. Please note, submitting fraudulent documents is a serious offense and may result in immediate termination and legal consequences.": "要成为Sefer应用程序上的拼车司机,您需要上传驾驶执照、身份证件和汽车登记文件。我们的人工智能系统将在短短2-3分钟内立即审核并验证它们的真实性。如果您的文件获得批准后,您可以开始在 Sefer 应用程序上担任司机。请注意,提交欺诈性文件属于严重犯罪行为,可能会导致立即终止合同并承担法律后果。",
|
||||||
|
"To change Language the App": "更改应用程序语言",
|
||||||
|
"To change some Settings": "更改某些设置",
|
||||||
|
"To ensure you receive the most accurate information for your location, please select your country below. This will help tailor the app experience and content to your country.": "为确保您收到最准确的所在位置信息,请在下面选择您所在的国家/地区。这将有助于根据您所在的国家/地区定制应用程序体验和内容。",
|
||||||
|
"To Home": "回家",
|
||||||
|
"to ride with": "一起骑",
|
||||||
|
"To Work": "上班",
|
||||||
|
"token updated": "令牌已更新",
|
||||||
|
"Total Amount:": "总金额:",
|
||||||
|
"Total Budget from trips by": "行程总预算",
|
||||||
|
"Total Budget from trips is": "旅行总预算为",
|
||||||
|
"Total Connection Duration:": "总连接持续时间:",
|
||||||
|
"Total Cost": "总成本",
|
||||||
|
"Total Cost is": "总成本为",
|
||||||
|
"Total Duration:": "总持续时间:",
|
||||||
|
"Total For You is": "为您提供的总计是",
|
||||||
|
"Total From Passenger is": "来自乘客的总计是",
|
||||||
|
"Total Hours on month": "当月总小时数",
|
||||||
|
"Total is": "总计为",
|
||||||
|
"Total Payments": "إجمالي المدفوعات",
|
||||||
|
"Total points is": "总分是",
|
||||||
|
"Total Points is": "总积分为",
|
||||||
|
"Total price from": "总价从",
|
||||||
|
"Total Rides": "إجمالي الرحلات",
|
||||||
|
"Trip Cancelled": "行程取消",
|
||||||
|
"Trip has Steps": "旅行有台阶",
|
||||||
|
"Trip is Begin": "旅行开始了",
|
||||||
|
"Trips recorded": "记录的行程",
|
||||||
|
"Turkey": "火鸡",
|
||||||
|
"type here": "在此输入",
|
||||||
|
"Type here Place": "在此输入地点",
|
||||||
|
"Type something...": "输入一些东西...",
|
||||||
|
"Type your Email": "输入您的电子邮件",
|
||||||
|
"Update": "更新",
|
||||||
|
"Update Education": "更新教育",
|
||||||
|
"Update Gender": "更新性别",
|
||||||
|
"USA": "美国",
|
||||||
|
"Use Touch ID or Face ID to confirm payment": "使用 Touch ID 或 Face ID 确认付款",
|
||||||
|
"User does not exist.": "用户不存在。",
|
||||||
|
"Vehicle Details Back": "车辆详情 返回",
|
||||||
|
"Vehicle Details Front": "车辆详细信息 正面",
|
||||||
|
"Vehicle Information": "معلومات المركبة",
|
||||||
|
"Verify Email": "验证邮件",
|
||||||
|
"Verify Email For Driver": "验证司机的电子邮件",
|
||||||
|
"View complaint": "عرض الشكوى",
|
||||||
|
"VIN": "车架号",
|
||||||
|
"VIN :": "车辆识别号码:",
|
||||||
|
"VIN is": "车辆识别号是",
|
||||||
|
"violet": "بنفسجي",
|
||||||
|
"Visit our website or contact Sefer support for information on driver registration and requirements.": "请访问我们的网站或联系 Sefer 支持人员,了解有关驱动程序注册和要求的信息。",
|
||||||
|
"Waiting for Captin ...": "等待队长...",
|
||||||
|
"Waiting for Driver ...": "等待司机...",
|
||||||
|
"Waiting for your location": "等待你的位置",
|
||||||
|
"Wallet": "钱包",
|
||||||
|
"Wallet Balance": "رصيد المحفظة",
|
||||||
|
"wallet due to a previous trip.": "由于之前的旅行,钱包被掏空了。",
|
||||||
|
"Wallet Information": "معلومات المحفظة",
|
||||||
|
"Wallet!": "钱包!",
|
||||||
|
"Warning": "Warning",
|
||||||
|
"Warning: Speeding detected!": "警告:检测到超速!",
|
||||||
|
"We are process picture please wait": "我们正在处理图片请稍候",
|
||||||
|
"We Are Sorry That we dont have cars in your Location!": "很抱歉,您所在的位置没有汽车!",
|
||||||
|
"We need your phone number to contact you and to help you receive orders.": "我们需要您的电话号码来与您联系并帮助您接收订单。",
|
||||||
|
"We need your phone number to contact you and to help you.": "我们需要您的电话号码来与您联系并为您提供帮助。",
|
||||||
|
"We noticed the speed is exceeding 100 km/h. Please slow down for your safety. If you feel unsafe, you can share your trip details with a contact or call the police using the red SOS button.": "我们注意到速度超过了 100 公里/小时。为了您的安全,请减速慢行。如果您感觉不安全,可以与联系人分享您的行程详细信息或使用红色 SOS 按钮报警。",
|
||||||
|
"We regret to inform you that another driver has accepted this order.": "我们很遗憾地通知您,另一位司机已接受此订单。",
|
||||||
|
"We search nearst Driver to you": "我们搜索离您最近的司机",
|
||||||
|
"We sent 5 digit to your Email provided": "我们向您提供的电子邮件发送了 5 位数字",
|
||||||
|
"Welcome back,": "Welcome back,",
|
||||||
|
"Welcome call": "Welcome call",
|
||||||
|
"Welcome Drivers": "أهلاً بالسواق",
|
||||||
|
"Welcome to Sefer!": "欢迎来到塞弗!",
|
||||||
|
"welcome_message": "欢迎消息",
|
||||||
|
"What are the requirements to become a driver?": "成为一名司机需要什么条件?",
|
||||||
|
"What safety measures does Sefer offer?": "Sefer 提供哪些安全措施?",
|
||||||
|
"What types of vehicles are available?": "有哪些类型的车辆可供选择?",
|
||||||
|
"WhatsApp: Activation": "WhatsApp: Activation",
|
||||||
|
"WhatsApp: Missing Docs": "WhatsApp: Missing Docs",
|
||||||
|
"WhatsApp: Support": "WhatsApp: Support",
|
||||||
|
"Where to": "去哪儿",
|
||||||
|
"Where you want go": "你想去的地方",
|
||||||
|
"white": "أبيض",
|
||||||
|
"with license plate": "有车牌的",
|
||||||
|
"With Sefer, you can get a ride to your destination in minutes.": "通过 Sefer,您可以在几分钟内乘车到达目的地。",
|
||||||
|
"Work Saved": "工作已保存",
|
||||||
|
"write Color for your car": "为你的车写颜色",
|
||||||
|
"write Expiration Date for your car": "写下您的汽车的到期日期",
|
||||||
|
"write Make for your car": "为你的汽车写下“Make for your car”",
|
||||||
|
"write Model for your car": "为您的汽车编写型号",
|
||||||
|
"Write note": "写笔记",
|
||||||
|
"write vin for your car": "为您的汽车写入 vin",
|
||||||
|
"write Year for your car": "写下你的车的年份",
|
||||||
|
"Year": "年",
|
||||||
|
"year :": "年 :",
|
||||||
|
"Year is": "年份是",
|
||||||
|
"yellow": "أصفر",
|
||||||
|
"Yes": "是的",
|
||||||
|
"Yes, you can cancel your ride under certain conditions (e.g., before driver is assigned). See the Sefer cancellation policy for details.": "是的,您可以在某些情况下取消行程(例如,在分配司机之前)。详情请参阅 Sefer 取消政策。",
|
||||||
|
"You are Delete": "你正在删除",
|
||||||
|
"You are not in near to passenger location": "您不在乘客位置附近",
|
||||||
|
"You are Stopped": "你被阻止了",
|
||||||
|
"You Are Stopped For this Day !": "今天你就被阻止了!",
|
||||||
|
"You can buy points from your budget": "您可以从预算中购买积分",
|
||||||
|
"You can buy Points to let you online": "您可以购买积分让您上网",
|
||||||
|
"You Can cancel Ride After Captain did not come in the time": "队长未按时到达后您可以取消乘车",
|
||||||
|
"You can cancel Ride now": "您现在可以取消行程",
|
||||||
|
"You can cancel trip": "您可以取消行程",
|
||||||
|
"You Can Cancel Trip And get Cost of Trip From": "您可以取消行程并获取行程费用:",
|
||||||
|
"You can change the Country to get all features": "您可以更改国家/地区以获得所有功能",
|
||||||
|
"You can change the language of the app": "您可以更改应用程序的语言",
|
||||||
|
"You can decline a request without any cost": "您可以拒绝请求,无需支付任何费用",
|
||||||
|
"You can\\\"t cancel!": "您无法取消!",
|
||||||
|
"You can\\\"t continue with us .": "你不能继续和我们在一起。",
|
||||||
|
"You dont Add Emergency Phone Yet!": "您还没有添加紧急电话!",
|
||||||
|
"You Dont Have Any amount in": "您没有任何金额",
|
||||||
|
"You Dont Have Any places yet !": "您还没有任何位置!",
|
||||||
|
"You dont have Points": "您没有积分",
|
||||||
|
"You Earn today is": "您今天的收入是",
|
||||||
|
"you gain": "你获得",
|
||||||
|
"You Have": "你有",
|
||||||
|
"You have": "你有",
|
||||||
|
"you have a negative balance of": "您的余额为负数",
|
||||||
|
"You have finished all times": "你已经完成了所有时间",
|
||||||
|
"You Have in": "你已经在",
|
||||||
|
"You have in account": "您账户中有",
|
||||||
|
"You have promo!": "你有促销!",
|
||||||
|
"You Have Tips": "你有秘诀",
|
||||||
|
"You must be charge your Account": "您必须向您的帐户收费",
|
||||||
|
"You must Verify email !.": "您必须验证电子邮件!",
|
||||||
|
"You Refused 3 Rides this Day that is the reason": "您今天拒绝了 3 次乘车,这就是原因",
|
||||||
|
"You Should be select reason.": "你应该选择理由。",
|
||||||
|
"You Should choose rate figure": "您应该选择费率数字",
|
||||||
|
"You should renew Driver license": "您应该更新驾驶执照",
|
||||||
|
"You should select one": "你应该选择一个",
|
||||||
|
"You trip distance is": "您的行程距离是",
|
||||||
|
"You will arrive to your destination after": "您将在之后到达目的地",
|
||||||
|
"You will arrive to your destination after timer end.": "计时器结束后您将到达目的地。",
|
||||||
|
"You will be pay the cost to driver or we will get it from you on next trip": "您将向司机支付费用,或者我们将在下次行程时向您收取费用",
|
||||||
|
"You will be thier in": "你将会在",
|
||||||
|
"You will choose allow all the time to be ready receive orders": "您将选择允许所有时间准备好接收订单",
|
||||||
|
"You will choose one of above !": "您将选择以上之一!",
|
||||||
|
"You will get cost of your work for this trip": "您将获得本次旅行的工作费用",
|
||||||
|
"you will pay to Driver": "您将支付给司机",
|
||||||
|
"you will pay to Driver you will be pay the cost of driver time look to your SEFER Wallet": "您将向司机付款 您将支付司机时间费用 请查看您的 SEFER 钱包",
|
||||||
|
"You will recieve code in sms message": "您将在短信中收到代码",
|
||||||
|
"Your Account is Deleted": "您的帐户已删除",
|
||||||
|
"Your are far from passenger location": "您距离乘客位置较远",
|
||||||
|
"Your Budget less than needed": "您的预算低于所需",
|
||||||
|
"Your data will be erased after 2 weeks": "您的数据将在 2 周后被删除",
|
||||||
|
"Your driver’s license and/or car tax has expired. Please renew them before proceeding.": "لقد انتهت صلاحية رخصة القيادة و/أو ضريبة السيارة الخاصة بك. يرجى تجديدها قبل المتابعة.",
|
||||||
|
"Your driver’s license has expired. Please renew it before proceeding.": "لقد انتهت صلاحية رخصة القيادة الخاصة بك. يرجى تجديدها قبل المتابعة.",
|
||||||
|
"Your fee is": "您的费用是",
|
||||||
|
"Your name": "你的名字",
|
||||||
|
"Your password": "你的密码",
|
||||||
|
"Your Ride Duration is": "您的骑行时间是",
|
||||||
|
"your ride is applied": "您的行程已被应用",
|
||||||
|
"Your trip cost is": "您的旅行费用是",
|
||||||
|
"Your trip distance is": "您的行程距离是",
|
||||||
|
"Your Wallet balance is": "您的钱包余额是",
|
||||||
|
"YYYY-MM-DD": "YYYY-MM-DD",
|
||||||
|
"أدخل الرمز هنا": "أدخل الرمز هنا",
|
||||||
|
"إنشاء حساب موظف": "إنشاء حساب موظف",
|
||||||
|
"الْمَجْمُوع هُوَ": "🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟",
|
||||||
|
"بطاقة الائتمان هي": "巴巴巴",
|
||||||
|
"تحقق": "تحقق",
|
||||||
|
"تم إرسال رمز التحقق إلى رقمك (\$phone)": "تم إرسال رمز التحقق إلى رقمك (\$phone)",
|
||||||
|
"تم إرسال رمز التحقق إلى رقمك (\$phoneNumber)": "تم إرسال رمز التحقق إلى رقمك (\$phoneNumber)",
|
||||||
|
"خطأ": "خطأ",
|
||||||
|
"خطأ', 'الرجاء إدخال رمز صحيح": "خطأ', 'الرجاء إدخال رمز صحيح",
|
||||||
|
"رمز التحقق": "رمز التحقق",
|
||||||
|
"فَاسْتَحِقَّ فُلُوسَك وَاكْسِب النِّقَاط": "❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️",
|
||||||
|
"لا تستطيع الغاء الرحله": "??????????????????????????????????????????????????????????????????????????????",
|
||||||
|
"لديك حساب بالفعل؟ ": "لديك حساب بالفعل؟ ",
|
||||||
|
"لَدَيْك": "😄😄😄😄😄",
|
||||||
|
"لِقَائِنَا غَدًا!": "吖吖吖吖!",
|
||||||
|
"مع الراكب": "请注意",
|
||||||
|
"من خلال القائمة أدناه": "🇨🇳 🇨🇳",
|
||||||
|
"موافق": "موافق",
|
||||||
|
"نجاح": "نجاح",
|
||||||
|
"وَلَن تَسْتَطِيع اسْتِخْدَام التَّطْبِيق مَرَّة أُخْرَى بَعْد شَهْر": "驶",
|
||||||
|
"يُلْغِي الرَّاكِب الرِّحْلَة": "🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟",
|
||||||
|
"ُExpire Date": "到期日期",
|
||||||
|
"⏳ Approval Queue": "⏳ Approval Queue",
|
||||||
|
"⚡ Quick Actions": "⚡ Quick Actions",
|
||||||
|
"📊 Reporting & Quality": "📊 Reporting & Quality",
|
||||||
|
"🔍 Search & Inquiries": "🔍 Search & Inquiries",
|
||||||
|
"🚗 Vehicle Management": "🚗 Vehicle Management",
|
||||||
|
};
|
||||||
870
siro_service/lib/controller/local/ar_jo.dart
Normal file
870
siro_service/lib/controller/local/ar_jo.dart
Normal file
@@ -0,0 +1,870 @@
|
|||||||
|
final Map<String, String> ar_jo = {
|
||||||
|
" phone": " phone",
|
||||||
|
"\${'Please enter": "\${'Please enter",
|
||||||
|
"\${'Step": "\${'Step",
|
||||||
|
". I am at least 18 years of age.": "。我已年满 18 岁。",
|
||||||
|
"10 and get 4% discount": "满 10 即可享受 4% 折扣",
|
||||||
|
"100 and get 11% discount": "满 100 即可享受 11% 折扣",
|
||||||
|
"20 and get 6% discount": "满 20 即可享受 6% 折扣",
|
||||||
|
"40 and get 8% discount": "满 40 即可享受 8% 折扣",
|
||||||
|
"5 digit": "5位数字",
|
||||||
|
"\\\$": "\\\$",
|
||||||
|
"Accept Order": "接受订单",
|
||||||
|
"Accept Ride's Terms & Review Privacy Notice": "接受乘车条款并查看隐私声明",
|
||||||
|
"accepted your order": "已接受您的订单",
|
||||||
|
"Account Number": "رقم الحساب",
|
||||||
|
"Active Duration:": "活跃时间:",
|
||||||
|
"Add": "Add",
|
||||||
|
"Add car": "Add car",
|
||||||
|
"Add Car Who Wants to Work": "أضف السيارة التي ترغب في العمل",
|
||||||
|
"Add Card": "添加卡",
|
||||||
|
"Add Credit Card": "添加信用卡",
|
||||||
|
"Add Driver Who Wants to Work": "إضافة سائق يرغب في العمل",
|
||||||
|
"Add Location": "添加位置",
|
||||||
|
"Add Location 1": "添加位置 1",
|
||||||
|
"Add Location 2": "添加位置 2",
|
||||||
|
"Add Location 3": "添加位置 3",
|
||||||
|
"Add Location 4": "添加位置 4",
|
||||||
|
"Add Payment Method": "添加付款方式",
|
||||||
|
"Add Phone": "添加电话",
|
||||||
|
"Add Promo": "添加促销",
|
||||||
|
"Add Stops": "添加停靠点",
|
||||||
|
"Added successfully": "Added successfully",
|
||||||
|
"Additional comments": "تعليقات إضافية.",
|
||||||
|
"Address": "地址",
|
||||||
|
"Address:": "地址:",
|
||||||
|
"Admin DashBoard": "管理仪表板",
|
||||||
|
"After this period": "这段时间之后",
|
||||||
|
"Age": "年龄",
|
||||||
|
"Age is": "年龄是",
|
||||||
|
"AI Page": "人工智能页面",
|
||||||
|
"Alexandria": "Alexandria",
|
||||||
|
"An error occurred during the payment process.": "付款过程中发生错误。",
|
||||||
|
"An error occurred: \$error": "An error occurred: \$error",
|
||||||
|
"and I have a trip on": "我有一次旅行",
|
||||||
|
"And you will can't return to use app after 1 month": "1 个月后您将无法返回使用应用程序",
|
||||||
|
"App with Passenger": "乘客应用程序",
|
||||||
|
"app_description": "应用程序描述",
|
||||||
|
"Apply Order": "申请订单",
|
||||||
|
"Apply Ride": "Apply Ride",
|
||||||
|
"Are you sure to cancel?": "您确定要取消吗?",
|
||||||
|
"Are you sure to delete recorded files": "您确定要删除录音文件吗",
|
||||||
|
"Are you sure to delete your account?": "您确定要删除您的帐户吗?",
|
||||||
|
"Are you Sure to LogOut?": "您确定要退出吗?",
|
||||||
|
"are you sure to pay to this driver gift": "are you sure to pay to this driver gift",
|
||||||
|
"Are You sure to ride to": "您确定要乘车前往",
|
||||||
|
"Are you want to go this site": "你想去这个网站吗",
|
||||||
|
"Are you want to go to this site": "你想访问这个网站吗",
|
||||||
|
"Arrival time": "到达时间",
|
||||||
|
"arrival time to reach your point": "到达目的地的到达时间",
|
||||||
|
"as the driver.": "作为司机。",
|
||||||
|
"Associate Degree": "副学士学位",
|
||||||
|
"Available for rides": "可乘坐",
|
||||||
|
"Average of Hours of": "平均小时数",
|
||||||
|
"Average Rating": "التقييم المتوسط",
|
||||||
|
"Avg Passenger Rating": "متوسط تقييم الركاب",
|
||||||
|
"aاسْتِخْرَاج رُخْصَة السَّيَّارَة.": "是的。",
|
||||||
|
"Bachelor's Degree": "学士学位",
|
||||||
|
"Back": "后退",
|
||||||
|
"Bahrain": "巴林",
|
||||||
|
"Bank Code": "رمز البنك",
|
||||||
|
"Bank Information": "معلومات البنك",
|
||||||
|
"Be Slowly": "慢慢来",
|
||||||
|
"Be sure for take accurate images please": "请务必拍摄准确的图像",
|
||||||
|
"Best choice for comfort car and flexible route and stops point": "舒适用车、灵活路线和停靠点的最佳选择",
|
||||||
|
"best driver": "best driver",
|
||||||
|
"Best Drivers": "Best Drivers",
|
||||||
|
"Birth Date": "出生日期",
|
||||||
|
"Birthdate": "تاريخ الميلاد",
|
||||||
|
"black": "أسود",
|
||||||
|
"blue": "أزرق",
|
||||||
|
"BookingFee": "预订费",
|
||||||
|
"Bottom Bar Example": "底栏示例",
|
||||||
|
"Bronze": "برونزي",
|
||||||
|
"brown": "بني",
|
||||||
|
"But you have a negative salary of": "但你的工资为负数",
|
||||||
|
"By selecting 'I Agree' below, I have reviewed and agree to the Terms of Use and acknowledge the": "通过选择下面的“我同意”,我已阅读并同意使用条款并承认",
|
||||||
|
"By selecting 'I Agree' below, I have reviewed and agree to the Terms of Use and acknowledge the Privacy Notice. I am at least 18 years of age.": "选择下面的“我同意”,即表示我已查看并同意使用条款并承认隐私声明。我已年满 18 岁。",
|
||||||
|
"by this list below": "通过下面的列表",
|
||||||
|
"Call Driver": "اتصل بالسائق",
|
||||||
|
"Call End": "通话结束",
|
||||||
|
"Camera Access Denied.": "相机访问被拒绝。",
|
||||||
|
"Camera not initialized yet": "相机尚未初始化",
|
||||||
|
"Camera not initilaized yet": "相机尚未初始化",
|
||||||
|
"Can I cancel my ride?": "我可以取消行程吗?",
|
||||||
|
"Can we know why you want to cancel Ride ?": "我们可以知道您为什么要取消行程吗?",
|
||||||
|
"Cancel": "取消",
|
||||||
|
"Cancel Ride": "取消乘车",
|
||||||
|
"Cancel Trip": "取消行程",
|
||||||
|
"Canceled": "取消",
|
||||||
|
"Capture an Image of Your car license back": "拍回您的汽车驾照图像",
|
||||||
|
"Capture an Image of Your car license front": "拍摄您的汽车牌照正面的图像",
|
||||||
|
"Capture an Image of Your Criminal Record": "拍摄您的犯罪记录图像",
|
||||||
|
"Capture an Image of Your Driver License": "拍摄您的驾驶执照的图像",
|
||||||
|
"Capture an Image of Your Driver’s License": "拍摄您的驾驶执照的图像",
|
||||||
|
"Capture an Image of Your ID Document Back": "拍摄您的身份证件图像",
|
||||||
|
"Capture an Image of Your ID Document front": "拍摄您的身份证件正面的图像",
|
||||||
|
"Car Color": "Car Color",
|
||||||
|
"Car Details": "汽车详情",
|
||||||
|
"Car Kind": "汽车种类",
|
||||||
|
"Car License Card": "汽车牌照",
|
||||||
|
"Car Plate": "车牌",
|
||||||
|
"car plate": "car plate",
|
||||||
|
"Car Plate is": "车牌是",
|
||||||
|
"Car Type": "نوع السيارة",
|
||||||
|
"Card ID": "رقم بطاقة الهوية",
|
||||||
|
"Card Number": "卡号",
|
||||||
|
"CardID": "卡号",
|
||||||
|
"Categories": "التصنيفات",
|
||||||
|
"Champagne": "شامبان",
|
||||||
|
"Change Country": "Ülke değiştir",
|
||||||
|
"Changes saved successfully": "تم حفظ التغييرات بنجاح",
|
||||||
|
"Chassis": "机壳",
|
||||||
|
"Choose from Map": "从地图中选择",
|
||||||
|
"Choose Language": "选择语言",
|
||||||
|
"City": "城市",
|
||||||
|
"Click here point": "点击这里点",
|
||||||
|
"Click here to Show it in Map": "单击此处在地图中显示它",
|
||||||
|
"Closest & Cheapest": "最近且最便宜",
|
||||||
|
"Color": "颜色",
|
||||||
|
"Color is": "颜色是",
|
||||||
|
"committed_to_safety": "致力于安全",
|
||||||
|
"Complaints": "الشكاوى",
|
||||||
|
"Confirm": "确认",
|
||||||
|
"Confirm Selection": "确认选择",
|
||||||
|
"Connected": "连接的",
|
||||||
|
"Contact us for any questions on your order.": "如果您对订单有任何疑问,请联系我们。",
|
||||||
|
"Copy this Promo to use it in your Ride!": "复制此促销信息以在您的骑行中使用!",
|
||||||
|
"Cost Duration": "费用持续时间",
|
||||||
|
"Cost Of Trip IS": "旅行费用是",
|
||||||
|
"Counts of Hours on days": "每天的小时数",
|
||||||
|
"Create Wallet to receive your money": "创建钱包来接收您的钱",
|
||||||
|
"Created At": "أنشئ في",
|
||||||
|
"created time": "创建时间",
|
||||||
|
"Credit card is": "信用卡是",
|
||||||
|
"Criminal Record": "犯罪记录",
|
||||||
|
"Cropper": "农作物",
|
||||||
|
"Current Location": "当前位置",
|
||||||
|
"cyan": "سماوي",
|
||||||
|
"Dark Red": "نبيتي",
|
||||||
|
"Date": "تاريخ",
|
||||||
|
"Date of Birth": "出生日期",
|
||||||
|
"Date of Birth is": "出生日期是",
|
||||||
|
"Date of Birth:": "出生日期:",
|
||||||
|
"Days": "天",
|
||||||
|
"Delete My Account": "删除我的账户",
|
||||||
|
"Deleted": "已删除",
|
||||||
|
"Destination": "目的地",
|
||||||
|
"Destination selected": "已选择目的地",
|
||||||
|
"Detect Your Face": "检测你的脸",
|
||||||
|
"Displacement": "移位",
|
||||||
|
"Distance": "مسافة",
|
||||||
|
"Distance from Passenger to destination is": "乘客到目的地的距离为",
|
||||||
|
"distance is": "距离是",
|
||||||
|
"Distance is": "距离是",
|
||||||
|
"Distance of the Ride is": "骑行距离为",
|
||||||
|
"Distance To Passenger is": "到乘客的距离是",
|
||||||
|
"Do you want to change Home location": "您想更改家庭位置吗",
|
||||||
|
"Do you want to change Work location": "您想更改工作地点吗",
|
||||||
|
"Do you want to pay Tips for this Driver": "您想为此司机支付小费吗",
|
||||||
|
"Doctoral Degree": "博士学位",
|
||||||
|
"Document Number:": "文件号码:",
|
||||||
|
"Documents check": "文件检查",
|
||||||
|
"Done": "Done",
|
||||||
|
"Driver": "司机",
|
||||||
|
"Driver Applied the Ride for You": "司机为您申请行程",
|
||||||
|
"Driver Cancel Your Trip": "司机取消您的行程",
|
||||||
|
"Driver Car Plate": "司机车牌",
|
||||||
|
"Driver details by national number": "Driver details by national number",
|
||||||
|
"Driver details by phone": "تفاصيل السائق حسب رقم الهاتف",
|
||||||
|
"Driver Finish Trip": "司机完成行程",
|
||||||
|
"Driver has been activated successfully!": "Driver has been activated successfully!",
|
||||||
|
"Driver Information": "معلومات عن السائق",
|
||||||
|
"Driver Name": "司机姓名",
|
||||||
|
"Driver not found": "Driver not found",
|
||||||
|
"Driver phone": "司机电话",
|
||||||
|
"Driver Registration & Requirements": "司机注册和要求",
|
||||||
|
"Driver Statistics": "إحصاءات السائق",
|
||||||
|
"Driver Wallet": "司机钱包",
|
||||||
|
"Driver's License": "驾照",
|
||||||
|
"driver_license": "驾驶执照",
|
||||||
|
"Drivers Activity": "نشاط السائقين",
|
||||||
|
"Drivers Cant Register": "السائقون لا يستطيعون التسجيل",
|
||||||
|
"Drivers License Class": "驾驶执照等级",
|
||||||
|
"Drivers License Class:": "驾驶执照类别:",
|
||||||
|
"Drivers phones not register": "هواتف السائقين غير مسجلة",
|
||||||
|
"Drivers waitting Register": "السائقون في انتظار التسجيل",
|
||||||
|
"Drivers Want Register": "السائقون يريدون التسجيل",
|
||||||
|
"duration is": "持续时间是",
|
||||||
|
"Duration is": "持续时间是",
|
||||||
|
"Duration of the Ride is": "骑行持续时间为",
|
||||||
|
"Duration of Trip is": "行程持续时间为",
|
||||||
|
"Duration To Passenger is": "到达乘客的时间是",
|
||||||
|
"Edit car details": "Edit car details",
|
||||||
|
"Edit car plate": "تعديل لوحة السيارة",
|
||||||
|
"Edit Profile": "编辑个人资料",
|
||||||
|
"Edit Your data": "编辑您的数据",
|
||||||
|
"Education": "教育",
|
||||||
|
"Eggplant": "باذنجان",
|
||||||
|
"Egypt": "埃及",
|
||||||
|
"Email": "البريد الإلكتروني",
|
||||||
|
"Email is": "电子邮件是",
|
||||||
|
"Email Us": "给我们发电子邮件",
|
||||||
|
"Email Wrong": "电子邮件错误",
|
||||||
|
"Email you inserted is Wrong.": "您输入的电子邮件有误。",
|
||||||
|
"Employment": "عمل",
|
||||||
|
"Employment Type": "雇佣类型",
|
||||||
|
"End Ride": "结束骑行",
|
||||||
|
"End Time": "وقت الانتهاء",
|
||||||
|
"Enjoy a safe and comfortable ride.": "享受安全舒适的乘车体验。",
|
||||||
|
"Enter notes after call": "أدخل الملاحظات بعد المكالمة",
|
||||||
|
"Enter notes here...": "أدخل الملاحظات هنا...",
|
||||||
|
"Enter promo code": "输入促销代码",
|
||||||
|
"Enter your email address": "输入你的电子邮箱地址",
|
||||||
|
"Enter your feedback here": "在此输入您的反馈",
|
||||||
|
"Enter your first name": "输入您的名字",
|
||||||
|
"Enter Your First Name": "输入您的名字",
|
||||||
|
"Enter your last name": "输入您的姓氏",
|
||||||
|
"Enter your Note": "输入您的备注",
|
||||||
|
"Enter your phone number": "输入你的电话号码",
|
||||||
|
"Error": "错误",
|
||||||
|
"Error', 'Failed to send OTP": "Error', 'Failed to send OTP",
|
||||||
|
"Error', 'Invalid OTP": "Error', 'Invalid OTP",
|
||||||
|
"Evening": "晚上",
|
||||||
|
"Exclusive offers and discounts always with the Sefer app": "Sefer 应用程序始终提供独家优惠和折扣",
|
||||||
|
"Expiration Date": "截止日期",
|
||||||
|
"Expiry Date": "到期日",
|
||||||
|
"Expiry Date:": "到期日:",
|
||||||
|
"Failed to update driver: \${decodedResponse is Map ? decodedResponse['message'] : 'failure'}": "Failed to update driver: \${decodedResponse is Map ? decodedResponse['message'] : 'failure'}",
|
||||||
|
"Favorite Places": "最喜欢的地方",
|
||||||
|
"Fee is": "费用为",
|
||||||
|
"Feed Back": "反馈",
|
||||||
|
"Feedback": "反馈",
|
||||||
|
"Feedback data saved successfully": "反馈数据保存成功",
|
||||||
|
"Female": "女性",
|
||||||
|
"First Name": "名",
|
||||||
|
"First name": "名",
|
||||||
|
"Flag-down fee": "降旗费",
|
||||||
|
"For Speed and Delivery trips, the price is calculated dynamically. For Comfort trips, the price is based on time and distance": "对于速度和送货行程,价格是动态计算的。对于舒适旅行,价格根据时间和距离而定",
|
||||||
|
"Frequently Questions": "常见问题",
|
||||||
|
"from 07:30 till 10:30 (Thursday, Friday, Saturday, Monday)": "07:30 至 10:30(周四、周五、周六、周一)",
|
||||||
|
"from 12:00 till 15:00 (Thursday, Friday, Saturday, Monday)": "12:00 至 15:00(周四、周五、周六、周一)",
|
||||||
|
"from 23:59 till 05:30": "23:59 至 05:30",
|
||||||
|
"from 3 times Take Attention": "3次起 注意",
|
||||||
|
"From :": "从 :",
|
||||||
|
"From : Current Location": "来自 : 当前位置",
|
||||||
|
"from your list": "从你的清单中",
|
||||||
|
"Fuel": "燃料",
|
||||||
|
"Fuel Type": "نوع الوقود",
|
||||||
|
"Full Name": "全名",
|
||||||
|
"Full Name (Marital)": "全名(婚姻)",
|
||||||
|
"FullName": "全名",
|
||||||
|
"Gender": "性别",
|
||||||
|
"Get Details of Trip": "获取行程详情",
|
||||||
|
"Get Direction": "得到指引",
|
||||||
|
"Get to your destination quickly and easily.": "快速、轻松地到达目的地。",
|
||||||
|
"get_a_ride": "搭个便车",
|
||||||
|
"get_to_destination": "到达目的地",
|
||||||
|
"Giza": "Giza",
|
||||||
|
"Go To Favorite Places": "去最喜欢的地方",
|
||||||
|
"Go to next step": "进入下一步",
|
||||||
|
"Go to passenger Location now": "立即前往乘客位置",
|
||||||
|
"Go to this Target": "前往该目标",
|
||||||
|
"go to your passenger location before": "前往您的乘客位置之前",
|
||||||
|
"gold": "ذهبي",
|
||||||
|
"GPS Required Allow !.": "需要 GPS 允许!。",
|
||||||
|
"gray": "رمادي",
|
||||||
|
"green": "أخضر",
|
||||||
|
"H and": "手",
|
||||||
|
"Height:": "高度:",
|
||||||
|
"Hello this is Captain": "你好,这是队长",
|
||||||
|
"Hello this is Driver": "你好,这是司机",
|
||||||
|
"Hello, I'm at the agreed-upon location": "你好,我已经到了约定的地点",
|
||||||
|
"Help Details": "帮助详情",
|
||||||
|
"Helping Center": "帮助中心",
|
||||||
|
"Here recorded trips audio": "这里记录了旅行音频",
|
||||||
|
"Hi": "你好",
|
||||||
|
"Hi ,I Arrive your site": "你好,我到达你的网站",
|
||||||
|
"Hi ,I will go now": "嗨,我现在就去",
|
||||||
|
"Hi! This is": "你好!这是",
|
||||||
|
"Hi, Where to": "你好,去哪里",
|
||||||
|
"High School Diploma": "高中毕业文凭",
|
||||||
|
"History of Trip": "旅行历史",
|
||||||
|
"Home": "家",
|
||||||
|
"Home Page": "主页",
|
||||||
|
"Home Saved": "已保存首页",
|
||||||
|
"How can I pay for my ride?": "我如何支付乘车费用?",
|
||||||
|
"How can I register as a driver?": "我如何注册成为司机?",
|
||||||
|
"How do I communicate with the other party (passenger/driver)?": "如何与对方(乘客/司机)沟通?",
|
||||||
|
"How do I request a ride?": "我如何叫车?",
|
||||||
|
"I added the wrong pick-up/drop-off location": "我添加了错误的接送地点",
|
||||||
|
"I Agree": "我同意",
|
||||||
|
"I am currently located at": "我目前位于",
|
||||||
|
"I am using": "我在用",
|
||||||
|
"I arrive you": "我到达你",
|
||||||
|
"I Arrive your site": "我到达你的网站",
|
||||||
|
"I cant register in your app in face detection": "我无法在您的应用程序中注册人脸检测",
|
||||||
|
"I don't have a reason": "我没有理由",
|
||||||
|
"I don't have a suitable vehicle": "ليس لدي مركبة مناسبة",
|
||||||
|
"I don't need a ride anymore": "我不再需要搭车了",
|
||||||
|
"I need more help understanding the app": "أحتاج إلى المزيد من المساعدة لفهم التطبيق",
|
||||||
|
"I was just trying the application": "我只是在尝试该应用程序",
|
||||||
|
"I will go now": "我要走了",
|
||||||
|
"I will slow down": "我会放慢脚步",
|
||||||
|
"I'll register when the app is fully launched": "سأسجل عندما يتم إطلاق التطبيق بالكامل",
|
||||||
|
"I'm not ready yet": "لست جاهزًا بعد",
|
||||||
|
"I'm waiting for you": "我在等你",
|
||||||
|
"ID Documents Back": "身份证件 返回",
|
||||||
|
"ID Documents Front": "身份证件正面",
|
||||||
|
"if you don\\\"t have account": "如果您没有帐户",
|
||||||
|
"if you dont have account": "如果您没有帐户",
|
||||||
|
"If you in Car Now. Press Start The Ride": "如果你现在在车里。按开始骑行",
|
||||||
|
"If you need to reach me, please contact the driver directly at": "如果您需要联系我,请直接联系司机",
|
||||||
|
"If you want add stop click here": "如果您想添加停靠站,请单击此处",
|
||||||
|
"if you want help you can email us here": "如果您需要帮助,您可以在这里给我们发电子邮件",
|
||||||
|
"If you want to make Google Map App run directly when you apply order": "如果您想让Google Map App在申请订单时直接运行",
|
||||||
|
"Image detecting result is": "图像检测结果为",
|
||||||
|
"Image not available": "Image not available",
|
||||||
|
"Image Upload Failed": "Image Upload Failed",
|
||||||
|
"image verified": "图像已验证",
|
||||||
|
"in your": "在你的",
|
||||||
|
"in your wallet": "在你的钱包里",
|
||||||
|
"Inatleq Service": "Inatleq Service",
|
||||||
|
"Including Tax": "含税",
|
||||||
|
"Increase Fee": "增加费用",
|
||||||
|
"indigo": "نيلي",
|
||||||
|
"Insert": "插入",
|
||||||
|
"insert amount": "插入量",
|
||||||
|
"Insert birth_date of Driver": "أدخل تاريخ ميلاد السائق",
|
||||||
|
"Insert car_model of Driver": "أدخل طراز السيارة للسائق",
|
||||||
|
"Insert car_number of Driver": "أدخل رقم سيارة السائق",
|
||||||
|
"Insert car_type of Driver": "أدخل نوع السيارة للسائق",
|
||||||
|
"insert Driver national": "insert Driver national",
|
||||||
|
"insert Driver phone": "أدخل رقم هاتف السائق",
|
||||||
|
"Insert Emergincy Number": "插入紧急号码",
|
||||||
|
"Insert license type of Driver": "أدخل نوع رخصة السائق",
|
||||||
|
"Insert Name of Driver": "أدخل اسم السائق",
|
||||||
|
"Insert Name of Owner": "أدخل اسم المالك",
|
||||||
|
"Insert national ID of Driver": "أدخل الرقم الوطني للسائق",
|
||||||
|
"insert passenger phone": "أدخل رقم هاتف الراكب",
|
||||||
|
"Insert phone of Driver": "أدخل رقم هاتف السائق",
|
||||||
|
"Insert phone of Owner": "أدخل هاتف المالك",
|
||||||
|
"Insert registration_date of Car": "أدخل تاريخ تسجيل السيارة",
|
||||||
|
"Insert registration_date of Driver": "",
|
||||||
|
"Insert site of Driver": "أدخل موقع السائق",
|
||||||
|
"Insert site of Owner": "أدخل موقع المالك",
|
||||||
|
"Insert year of Car": "أدخل سنة السيارة",
|
||||||
|
"Inspection Date": "检验日期",
|
||||||
|
"InspectionResult": "检查结果",
|
||||||
|
"Invalid MPIN": "MPIN 无效",
|
||||||
|
"Invalid OTP": "无效一次性密码",
|
||||||
|
"is driving a": "正在驾驶",
|
||||||
|
"is ON for this month": "本月已开启",
|
||||||
|
"Is the Passenger in your Car ?": "乘客在你的车里吗?",
|
||||||
|
"Issue Date": "签发日期",
|
||||||
|
"IssueDate": "签发日期",
|
||||||
|
"Issues": "Issues",
|
||||||
|
"JOD": "乔德",
|
||||||
|
"Join": "加入",
|
||||||
|
"Jordan": "约旦",
|
||||||
|
"KM": "知识管理",
|
||||||
|
"Kuwait": "科威特",
|
||||||
|
"Language": "语言",
|
||||||
|
"Last name": "姓",
|
||||||
|
"Last Payment Amount": "مبلغ آخر دفعة",
|
||||||
|
"Last Payment Method": "آخر طريقة دفع",
|
||||||
|
"Latest Recent Trip": "最近最近的旅行",
|
||||||
|
"Latest Ride": "أحدث رحلة",
|
||||||
|
"LE": "LE",
|
||||||
|
"Leave": "离开",
|
||||||
|
"Lets check Car license": "让我们检查一下汽车牌照",
|
||||||
|
"Lets check License Back Face": "让我们检查许可证背面",
|
||||||
|
"License Categories": "许可证类别",
|
||||||
|
"License Information": "معلومات الرخصة",
|
||||||
|
"License Type": "许可证类型",
|
||||||
|
"lime": "ليموني",
|
||||||
|
"Log Off": "注销",
|
||||||
|
"Log Out Page": "注销页面",
|
||||||
|
"Login": "登录",
|
||||||
|
"Login Captin": "登录队长",
|
||||||
|
"Login Driver": "登录驱动程序",
|
||||||
|
"m": "米",
|
||||||
|
"Made :": "制成 :",
|
||||||
|
"magenta": "بنفسجي",
|
||||||
|
"Make": "制作",
|
||||||
|
"Make is": "品牌是",
|
||||||
|
"Male": "男性",
|
||||||
|
"Map Passenger": "地图乘客",
|
||||||
|
"Marital Status": "婚姻状况",
|
||||||
|
"Maroon": "ماروني",
|
||||||
|
"Master's Degree": "硕士",
|
||||||
|
"Maximum fare": "最高票价",
|
||||||
|
"message From passenger": "乘客留言",
|
||||||
|
"message'].toString().tr : 'فشل تسجيل الدخول": "message'].toString().tr : 'فشل تسجيل الدخول",
|
||||||
|
"Minimum fare": "最低票价",
|
||||||
|
"Minute": "分钟",
|
||||||
|
"Minutes": "分钟",
|
||||||
|
"Mocha": "موكا",
|
||||||
|
"Model": "模型",
|
||||||
|
"model :": "模型 :",
|
||||||
|
"Model is": "型号是",
|
||||||
|
"Morning": "早晨",
|
||||||
|
"Multiplier": "مضاعف",
|
||||||
|
"My Card": "我的卡",
|
||||||
|
"My Cared": "我的关心",
|
||||||
|
"My current location is:": "我当前的位置是:",
|
||||||
|
"My documents have expired": "وثائقي منتهية الصلاحية",
|
||||||
|
"my location": "我的位置",
|
||||||
|
"My location is correct. You can search for me using the navigation app": "我的位置是正确的。您可以使用导航应用程序搜索我",
|
||||||
|
"My Profile": "我的简历",
|
||||||
|
"My Wallet": "我的钱包",
|
||||||
|
"MyLocation": "我的位置",
|
||||||
|
"N/A": "不适用",
|
||||||
|
"Name": "姓名",
|
||||||
|
"Name (Arabic)": "姓名(阿拉伯语)",
|
||||||
|
"Name (English)": "姓名(英文)",
|
||||||
|
"Name :": "姓名 :",
|
||||||
|
"Name Arabic": "Name Arabic",
|
||||||
|
"Name English": "Name English",
|
||||||
|
"Name in arabic": "阿拉伯语名称",
|
||||||
|
"Name of the Passenger is": "乘客姓名是",
|
||||||
|
"National ID": "国民身份证",
|
||||||
|
"National Number": "国家号码",
|
||||||
|
"NationalID": "国民身份证",
|
||||||
|
"navy": "كحلي",
|
||||||
|
"Nearest Car for you about": "距离您最近的汽车",
|
||||||
|
"New": "New",
|
||||||
|
"Next": "下一个",
|
||||||
|
"Night": "夜晚",
|
||||||
|
"No ,still Waiting.": "不,还在等待。",
|
||||||
|
"No accepted orders? Try raising your trip fee to attract riders.": "没有接受订单?尝试提高行程费用以吸引乘客。",
|
||||||
|
"No Car found yet": "No Car found yet",
|
||||||
|
"No Car in your site. Sorry!": "您的网站上没有汽车。对不起!",
|
||||||
|
"No Car or Driver Found in your area.": "在您所在的地区找不到汽车或司机。",
|
||||||
|
"No driver accepted my request": "没有司机接受我的请求",
|
||||||
|
"No drivers found": "No drivers found",
|
||||||
|
"No face detected": "未检测到人脸",
|
||||||
|
"No I want": "不,我想",
|
||||||
|
"No image selected yet": "尚未选择图像",
|
||||||
|
"No Promo for today .": "今天没有促销。",
|
||||||
|
"No Response yet.": "尚未回复。",
|
||||||
|
"No ride found yet": "尚未找到乘车路线",
|
||||||
|
"No SIM card, no problem! Call your driver directly through our app. We use advanced technology to ensure your privacy.": "没有SIM卡,没问题!通过我们的应用程序直接致电您的司机。我们使用先进的技术来确保您的隐私。",
|
||||||
|
"No trip yet found": "尚未找到行程",
|
||||||
|
"No, thanks": "不,谢谢",
|
||||||
|
"No,I want": "不,我想",
|
||||||
|
"Not Connected": "未连接",
|
||||||
|
"Not found any image": "لم يتم العثور على أي صورة",
|
||||||
|
"note'] ?? 'Enter notes after call": "note'] ?? 'Enter notes after call",
|
||||||
|
"Notes": "ملاحظات",
|
||||||
|
"notes'] ?? 'Enter notes here...": "notes'] ?? 'Enter notes here...",
|
||||||
|
"Notes:": "ملاحظات:",
|
||||||
|
"Notifications": "通知",
|
||||||
|
"Now select start pick": "现在选择开始选择",
|
||||||
|
"Occupation": "职业",
|
||||||
|
"of": "of",
|
||||||
|
"Ok": "好的",
|
||||||
|
"Ok , See you Tomorrow": "好的明天见",
|
||||||
|
"Open Settings": "打开设置",
|
||||||
|
"orange": "برتقالي",
|
||||||
|
"Order": "Order",
|
||||||
|
"Order Applied": "已应用订单",
|
||||||
|
"Order Cancelled": "订单已取消",
|
||||||
|
"Order Cancelled by Passenger": "乘客取消订单",
|
||||||
|
"Order Details Speed": "订单详情 速度",
|
||||||
|
"Order History": "订单历史",
|
||||||
|
"Order Request Page": "订单请求页面",
|
||||||
|
"OrderId": "订单号",
|
||||||
|
"Origin": "起源",
|
||||||
|
"Other": "其他",
|
||||||
|
"Owner": "Owner",
|
||||||
|
"Owner Name": "业主姓名",
|
||||||
|
"Passenger Cancel Trip": "乘客取消行程",
|
||||||
|
"Passenger cancel trip": "乘客取消行程",
|
||||||
|
"Passenger come to you": "乘客来找你",
|
||||||
|
"passenger details by phone": "تفاصيل الراكب حسب رقم الهاتف",
|
||||||
|
"Passenger name :": "乘客姓名:",
|
||||||
|
"Passenger Name is": "乘客姓名是",
|
||||||
|
"Passenger not found": "Passenger not found",
|
||||||
|
"Passenger Not Found": "Passenger Not Found",
|
||||||
|
"Passengers Cant Register": "الركاب لا يستطيعون التسجيل",
|
||||||
|
"Passengers Rated": "تقييمات الركاب",
|
||||||
|
"Password must br at least 6 character.": "密码必须至少包含 6 个字符。",
|
||||||
|
"Pay from my budget": "从我的预算中支付",
|
||||||
|
"Pay with Credit Card": "使用信用卡支付",
|
||||||
|
"Pay with Wallet": "使用钱包支付",
|
||||||
|
"Pay with Your": "用您的支付",
|
||||||
|
"Pay with Your PayPal": "使用 PayPal 付款",
|
||||||
|
"Payment Failed": "支付失败",
|
||||||
|
"Payment History": "支付历史",
|
||||||
|
"Payment Method": "付款方式",
|
||||||
|
"Payment Successful": "支付成功",
|
||||||
|
"Pending": "Pending",
|
||||||
|
"Perfect for adventure seekers who want to experience something new and exciting": "非常适合想要体验新鲜刺激的冒险爱好者",
|
||||||
|
"Personal Information": "معلومات شخصية",
|
||||||
|
"Phone": "رقم الهاتف",
|
||||||
|
"Phone Number": "رقم الهاتف",
|
||||||
|
"Phone Number is": "电话号码是",
|
||||||
|
"Pick from map": "从地图上选择",
|
||||||
|
"Pick your destination from Map": "从地图中选择您的目的地",
|
||||||
|
"Pick your ride location on the map - Tap to confirm": "在地图上选择您的乘车地点 - 点击确认",
|
||||||
|
"pink": "وردي",
|
||||||
|
"Plate Number": "车牌号码",
|
||||||
|
"Please enter": "请输入",
|
||||||
|
"Please enter a phone number": "请输入电话号码",
|
||||||
|
"Please enter a valid 16-digit card number": "请输入有效的 16 位卡号",
|
||||||
|
"Please enter a valid email.": "Please enter a valid email.",
|
||||||
|
"Please enter a valid phone number.": "Please enter a valid phone number.",
|
||||||
|
"Please enter a value": "Please enter a value",
|
||||||
|
"Please enter the cardholder name": "请输入持卡人姓名",
|
||||||
|
"Please enter the CVV code": "请输入CVV码",
|
||||||
|
"Please enter the expiry date": "请输入有效期",
|
||||||
|
"Please enter your City.": "请输入您的城市。",
|
||||||
|
"Please enter Your Email.": "请输入您的电子邮件。",
|
||||||
|
"Please enter your feedback.": "请输入您的反馈。",
|
||||||
|
"Please enter your first name.": "请输入您的名字。",
|
||||||
|
"Please enter your last name.": "请输入您的姓氏。",
|
||||||
|
"Please enter Your Password.": "请输入您的密码。",
|
||||||
|
"Please enter your phone number.": "请输入您的电话号码。",
|
||||||
|
"Please enter your Question.": "请输入您的问题。",
|
||||||
|
"Please go to Car Driver": "请前往汽车司机",
|
||||||
|
"Please go to Car now": "请立即前往汽车",
|
||||||
|
"please go to picker location exactly": "请准确前往选取器位置",
|
||||||
|
"Please help! Contact me as soon as possible.": "请帮忙!尽快联系我。",
|
||||||
|
"Please put your licence in these border": "请将您的驾照放在这些边框内",
|
||||||
|
"Please stay on the picked point.": "请留在选定的点上。",
|
||||||
|
"Please Try anther time": "请稍后尝试",
|
||||||
|
"Please wait for the passenger to enter the car before starting the trip.": "请等待乘客上车后再开始行程。",
|
||||||
|
"Please Wait If passenger want To Cancel!": "如果旅客想取消,请稍候!",
|
||||||
|
"please wait till driver accept your order": "请等待司机接受您的订单",
|
||||||
|
"Point": "观点",
|
||||||
|
"Price": "السعر",
|
||||||
|
"price is": "价格是",
|
||||||
|
"Privacy Notice": "隐私声明",
|
||||||
|
"Profile": "轮廓",
|
||||||
|
"Promo Code": "促销代码",
|
||||||
|
"Promo End !": "促销结束!",
|
||||||
|
"Promos": "促销",
|
||||||
|
"Promos For today": "今天的促销",
|
||||||
|
"purple": "أرجواني",
|
||||||
|
"Pyament Cancelled .": "皮亚门特已取消。",
|
||||||
|
"Qatar": "卡塔尔",
|
||||||
|
"Quick Communication": "Quick Communication",
|
||||||
|
"Quick Search...": "Quick Search...",
|
||||||
|
"Rate Captain": "评分队长",
|
||||||
|
"Rate Driver": "费率驱动因素",
|
||||||
|
"Rate Passenger": "票价乘客",
|
||||||
|
"Rating is": "评级为",
|
||||||
|
"raw gray": "رمادي ",
|
||||||
|
"Recharge my Account": "为我的帐户充值",
|
||||||
|
"Record saved": "记录已保存",
|
||||||
|
"red": "أحمر",
|
||||||
|
"Refuse Order": "拒绝订单",
|
||||||
|
"Register": "登记",
|
||||||
|
"Register as Driver": "注册成为司机",
|
||||||
|
"Register Captin": "注册队长",
|
||||||
|
"Register Driver": "注册驱动程序",
|
||||||
|
"Register new driver": "تسجيل سائق جديد",
|
||||||
|
"Registration Date": "تاريخ التسجيل",
|
||||||
|
"reject your order.": "拒绝您的订单。",
|
||||||
|
"Religion": "宗教",
|
||||||
|
"Ride ID": "معرف الرحلة",
|
||||||
|
"Ride Summaries": "骑行总结",
|
||||||
|
"Ride Summary": "骑行总结",
|
||||||
|
"Ride Today :": "今天骑行:",
|
||||||
|
"Ride Wallet": "骑行钱包",
|
||||||
|
"Rouats of Trip": "旅行路线",
|
||||||
|
"safe_and_comfortable": "安全舒适",
|
||||||
|
"Saudi Arabia": "沙特阿拉伯",
|
||||||
|
"Save and Activate": "Save and Activate",
|
||||||
|
"Save Changes": "حفظ التغييرات",
|
||||||
|
"Save Credit Card": "保存信用卡",
|
||||||
|
"Save Notes": "حفظ الملاحظات",
|
||||||
|
"Saved Sucssefully": "保存成功",
|
||||||
|
"Scam Reports": "تقارير الاحتيال",
|
||||||
|
"scan Car License.": "扫描汽车驾照。",
|
||||||
|
"Scan Driver License": "扫描驾驶执照",
|
||||||
|
"Scan Id": "扫描 ID",
|
||||||
|
"Scan ID MklGoogle": "扫描 ID MklGoogle",
|
||||||
|
"Search by phone number": "Search by phone number",
|
||||||
|
"Search Details": "Search Details",
|
||||||
|
"Search for waypoint": "搜索航点",
|
||||||
|
"Search for your destination": "搜索您的目的地",
|
||||||
|
"Search for your Start point": "搜索您的起点",
|
||||||
|
"See you Tomorrow!": "明天见!",
|
||||||
|
"Sefer is committed to safety, and all of our captains are carefully screened and background checked.": "Sefer 致力于安全,我们所有的船长都经过仔细的筛选和背景调查。",
|
||||||
|
"Sefer is the ride-hailing app that is safe, reliable, and accessible.": "Sefer 是一款安全、可靠且易于使用的叫车应用程序。",
|
||||||
|
"Sefer offers a variety of vehicle options to suit your needs, including economy, comfort, and luxury. Choose the option that best fits your budget and passenger count.": "Sefer 提供多种车辆选择以满足您的需求,包括经济型、舒适型和豪华型。选择最适合您的预算和乘客数量的选项。",
|
||||||
|
"Sefer offers multiple payment methods for your convenience. Choose between cash payment or credit/debit card payment during ride confirmation.": "Sefer 提供多种付款方式,方便您使用。在行程确认时选择现金付款或信用卡/借记卡付款。",
|
||||||
|
"Sefer prioritizes your safety. We offer features like driver verification, in-app trip tracking, and emergency contact options.": "Sefer 将您的安全放在首位。我们提供驾驶员验证、应用内行程跟踪和紧急联系选项等功能。",
|
||||||
|
"Sefer provides in-app chat functionality to allow you to communicate with your driver or passenger during your ride.": "Sefer 提供应用内聊天功能,让您在乘车期间与司机或乘客进行交流。",
|
||||||
|
"Sefer Service": "خدمة سفر",
|
||||||
|
"Select Country": "选择国家",
|
||||||
|
"Select Date": "选择日期",
|
||||||
|
"Select one message": "选择一条消息",
|
||||||
|
"Select recorded trip": "选择记录的行程",
|
||||||
|
"Select Your Country": "选择您的国家/地区",
|
||||||
|
"Select your destination": "选择您的目的地",
|
||||||
|
"Selected file:": "选定的文件:",
|
||||||
|
"send": "send",
|
||||||
|
"Send Verfication Code": "发送验证码",
|
||||||
|
"Send Verification Code": "发送验证码",
|
||||||
|
"Server Error": "Server Error",
|
||||||
|
"Service Agent": "Service Agent",
|
||||||
|
"Settings": "设置",
|
||||||
|
"Sex is": "性别是",
|
||||||
|
"Share Trip Details": "分享行程详情",
|
||||||
|
"Show latest promo": "显示最新促销",
|
||||||
|
"Show Promos": "显示促销",
|
||||||
|
"Show Promos to Charge": "显示促销活动以收费",
|
||||||
|
"Sign In by Apple": "通过 Apple 登录",
|
||||||
|
"Sign In by Google": "通过谷歌登录",
|
||||||
|
"Sign in with Google for easier email and name entry": "使用 Google 登录以更轻松地输入电子邮件和姓名",
|
||||||
|
"Sign Out": "登出",
|
||||||
|
"silver": "فضي",
|
||||||
|
"Siro Service": "Siro Service",
|
||||||
|
"Sky Blue": "أزرق سماوي",
|
||||||
|
"So go and gain your money": "所以去赚你的钱吧",
|
||||||
|
"SOS Phone": "求救电话",
|
||||||
|
"Speed Over": "超速",
|
||||||
|
"Start Record": "开始记录",
|
||||||
|
"Start the Ride": "开始骑行",
|
||||||
|
"Start Time": "وقت البدء",
|
||||||
|
"Statistics": "统计数据",
|
||||||
|
"Status": "حالة",
|
||||||
|
"Step-by-step instructions on how to request a ride through the Sefer app.": "有关如何通过 Sefer 应用叫车的分步说明。",
|
||||||
|
"Submit": "提交",
|
||||||
|
"Submit Question": "提交问题",
|
||||||
|
"Submit rating": "提交评分",
|
||||||
|
"Success": "成功",
|
||||||
|
"Switch Rider": "开关骑手",
|
||||||
|
"Syrian Documents Check": "Syrian Documents Check",
|
||||||
|
"Take Image": "拍摄图像",
|
||||||
|
"Take Picture Of Driver License Card": "拍摄驾驶执照卡的照片",
|
||||||
|
"Take Picture Of ID Card": "拍摄身份证照片",
|
||||||
|
"Target": "目标",
|
||||||
|
"Tariff": "关税",
|
||||||
|
"Tariffs": "关税",
|
||||||
|
"Tax Expiry Date": "纳税到期日",
|
||||||
|
"teal": "تركوازي",
|
||||||
|
"Thanks": "谢谢",
|
||||||
|
"thanks": "thanks",
|
||||||
|
"the 300 points equal 300 L.E": "300 点等于 300 L.E",
|
||||||
|
"the 300 points equal 300 L.E for you": "300 点等于 300 L.E",
|
||||||
|
"the 500 points equal 30 JOD": "500 点等于 30 JOD",
|
||||||
|
"the 500 points equal 30 JOD for you": "500 积分等于 30 JOD 给您",
|
||||||
|
"The distance less than 500 meter.": "距离小于500米。",
|
||||||
|
"The driver accept your order for": "司机接受您的订单",
|
||||||
|
"The driver on your way": "司机正在路上",
|
||||||
|
"The driver waitting you in picked location .": "司机在指定地点等候您。",
|
||||||
|
"The Driver Will be in your location soon .": "司机很快就会到达您所在的位置。",
|
||||||
|
"The email or phone number is already registered.": "该电子邮件或电话号码已被注册。",
|
||||||
|
"The full name on your criminal record does not match the one on your driver’s license. Please verify and provide the correct documents.": "您犯罪记录上的全名与您驾驶执照上的全名不符。请核实并提供正确的文件。",
|
||||||
|
"The national number on your driver’s license does not match the one on your ID document. Please verify and provide the correct documents.": "您的驾驶执照上的国家号码与您的身份证件上的号码不匹配。请核实并提供正确的文件。",
|
||||||
|
"The payment was approved.": "付款已获批准。",
|
||||||
|
"The payment was not approved. Please try again.": "付款未获批准。请再试一次。",
|
||||||
|
"There is no data yet.": "还没有数据。",
|
||||||
|
"There is no help Question here": "这里没有帮助问题",
|
||||||
|
"There is no notification yet": "目前还没有通知",
|
||||||
|
"There no Driver Aplly your order sorry for that": "没有司机申请您的订单,对此深表歉意",
|
||||||
|
"This amount for all trip I get from Passengers": "我从乘客那里得到的所有行程的金额",
|
||||||
|
"This amount for all trip I get from Passengers and Collected For me in": "这笔金额是我从乘客处获得并为我收取的所有行程的金额",
|
||||||
|
"This is for delivery or a motorcycle.": "这是用于送货或摩托车。",
|
||||||
|
"This price may be changed": "此价格可能会更改",
|
||||||
|
"This ride type allows changes, but the price may increase": "此行程类型允许更改,但价格可能会上涨",
|
||||||
|
"This ride type does not allow changes to the destination or additional stops": "此行程类型不允许更改目的地或增加停靠站",
|
||||||
|
"This trip goes directly from your starting point to your destination for a fixed price. The driver must follow the planned route": "此行程以固定价格直接从您的出发地前往目的地。司机必须按照计划的路线行驶",
|
||||||
|
"this will delete all files from your device": "这将从您的设备中删除所有文件",
|
||||||
|
"Time to arrive": "到达时间",
|
||||||
|
"Tip is": "提示是",
|
||||||
|
"tips": "尖端",
|
||||||
|
"To :": "到 :",
|
||||||
|
"to arrive you.": "到达你身边。",
|
||||||
|
"To become a ride-sharing driver on the Sefer app, you need to upload your driver\\\"s license, ID document, and car registration document. Our AI system will instantly review and verify their authenticity in just 2-3 minutes. If your documents are approved, you can start working as a driver on the Sefer app. Please note, submitting fraudulent documents is a serious offense and may result in immediate termination and legal consequences.": "要成为Sefer应用程序上的拼车司机,您需要上传驾驶执照、身份证件和汽车登记文件。我们的人工智能系统将在短短2-3分钟内立即审核并验证它们的真实性。如果您的文件获得批准后,您可以开始在 Sefer 应用程序上担任司机。请注意,提交欺诈性文件属于严重犯罪行为,可能会导致立即终止合同并承担法律后果。",
|
||||||
|
"To change Language the App": "更改应用程序语言",
|
||||||
|
"To change some Settings": "更改某些设置",
|
||||||
|
"To ensure you receive the most accurate information for your location, please select your country below. This will help tailor the app experience and content to your country.": "为确保您收到最准确的所在位置信息,请在下面选择您所在的国家/地区。这将有助于根据您所在的国家/地区定制应用程序体验和内容。",
|
||||||
|
"To Home": "回家",
|
||||||
|
"to ride with": "一起骑",
|
||||||
|
"To Work": "上班",
|
||||||
|
"token updated": "令牌已更新",
|
||||||
|
"Total Amount:": "总金额:",
|
||||||
|
"Total Budget from trips by": "行程总预算",
|
||||||
|
"Total Budget from trips is": "旅行总预算为",
|
||||||
|
"Total Connection Duration:": "总连接持续时间:",
|
||||||
|
"Total Cost": "总成本",
|
||||||
|
"Total Cost is": "总成本为",
|
||||||
|
"Total Duration:": "总持续时间:",
|
||||||
|
"Total For You is": "为您提供的总计是",
|
||||||
|
"Total From Passenger is": "来自乘客的总计是",
|
||||||
|
"Total Hours on month": "当月总小时数",
|
||||||
|
"Total is": "总计为",
|
||||||
|
"Total Payments": "إجمالي المدفوعات",
|
||||||
|
"Total points is": "总分是",
|
||||||
|
"Total Points is": "总积分为",
|
||||||
|
"Total price from": "总价从",
|
||||||
|
"Total Rides": "إجمالي الرحلات",
|
||||||
|
"Trip Cancelled": "行程取消",
|
||||||
|
"Trip has Steps": "旅行有台阶",
|
||||||
|
"Trip is Begin": "旅行开始了",
|
||||||
|
"Trips recorded": "记录的行程",
|
||||||
|
"Turkey": "火鸡",
|
||||||
|
"type here": "在此输入",
|
||||||
|
"Type here Place": "在此输入地点",
|
||||||
|
"Type something...": "输入一些东西...",
|
||||||
|
"Type your Email": "输入您的电子邮件",
|
||||||
|
"Update": "更新",
|
||||||
|
"Update Education": "更新教育",
|
||||||
|
"Update Gender": "更新性别",
|
||||||
|
"USA": "美国",
|
||||||
|
"Use Touch ID or Face ID to confirm payment": "使用 Touch ID 或 Face ID 确认付款",
|
||||||
|
"User does not exist.": "用户不存在。",
|
||||||
|
"Vehicle Details Back": "车辆详情 返回",
|
||||||
|
"Vehicle Details Front": "车辆详细信息 正面",
|
||||||
|
"Vehicle Information": "معلومات المركبة",
|
||||||
|
"Verify Email": "验证邮件",
|
||||||
|
"Verify Email For Driver": "验证司机的电子邮件",
|
||||||
|
"View complaint": "عرض الشكوى",
|
||||||
|
"VIN": "车架号",
|
||||||
|
"VIN :": "车辆识别号码:",
|
||||||
|
"VIN is": "车辆识别号是",
|
||||||
|
"violet": "بنفسجي",
|
||||||
|
"Visit our website or contact Sefer support for information on driver registration and requirements.": "请访问我们的网站或联系 Sefer 支持人员,了解有关驱动程序注册和要求的信息。",
|
||||||
|
"Waiting for Captin ...": "等待队长...",
|
||||||
|
"Waiting for Driver ...": "等待司机...",
|
||||||
|
"Waiting for your location": "等待你的位置",
|
||||||
|
"Wallet": "钱包",
|
||||||
|
"Wallet Balance": "رصيد المحفظة",
|
||||||
|
"wallet due to a previous trip.": "由于之前的旅行,钱包被掏空了。",
|
||||||
|
"Wallet Information": "معلومات المحفظة",
|
||||||
|
"Wallet!": "钱包!",
|
||||||
|
"Warning": "Warning",
|
||||||
|
"Warning: Speeding detected!": "警告:检测到超速!",
|
||||||
|
"We are process picture please wait": "我们正在处理图片请稍候",
|
||||||
|
"We Are Sorry That we dont have cars in your Location!": "很抱歉,您所在的位置没有汽车!",
|
||||||
|
"We need your phone number to contact you and to help you receive orders.": "我们需要您的电话号码来与您联系并帮助您接收订单。",
|
||||||
|
"We need your phone number to contact you and to help you.": "我们需要您的电话号码来与您联系并为您提供帮助。",
|
||||||
|
"We noticed the speed is exceeding 100 km/h. Please slow down for your safety. If you feel unsafe, you can share your trip details with a contact or call the police using the red SOS button.": "我们注意到速度超过了 100 公里/小时。为了您的安全,请减速慢行。如果您感觉不安全,可以与联系人分享您的行程详细信息或使用红色 SOS 按钮报警。",
|
||||||
|
"We regret to inform you that another driver has accepted this order.": "我们很遗憾地通知您,另一位司机已接受此订单。",
|
||||||
|
"We search nearst Driver to you": "我们搜索离您最近的司机",
|
||||||
|
"We sent 5 digit to your Email provided": "我们向您提供的电子邮件发送了 5 位数字",
|
||||||
|
"Welcome back,": "Welcome back,",
|
||||||
|
"Welcome call": "Welcome call",
|
||||||
|
"Welcome Drivers": "أهلاً بالسواق",
|
||||||
|
"Welcome to Sefer!": "欢迎来到塞弗!",
|
||||||
|
"welcome_message": "欢迎消息",
|
||||||
|
"What are the requirements to become a driver?": "成为一名司机需要什么条件?",
|
||||||
|
"What safety measures does Sefer offer?": "Sefer 提供哪些安全措施?",
|
||||||
|
"What types of vehicles are available?": "有哪些类型的车辆可供选择?",
|
||||||
|
"WhatsApp: Activation": "WhatsApp: Activation",
|
||||||
|
"WhatsApp: Missing Docs": "WhatsApp: Missing Docs",
|
||||||
|
"WhatsApp: Support": "WhatsApp: Support",
|
||||||
|
"Where to": "去哪儿",
|
||||||
|
"Where you want go": "你想去的地方",
|
||||||
|
"white": "أبيض",
|
||||||
|
"with license plate": "有车牌的",
|
||||||
|
"With Sefer, you can get a ride to your destination in minutes.": "通过 Sefer,您可以在几分钟内乘车到达目的地。",
|
||||||
|
"Work Saved": "工作已保存",
|
||||||
|
"write Color for your car": "为你的车写颜色",
|
||||||
|
"write Expiration Date for your car": "写下您的汽车的到期日期",
|
||||||
|
"write Make for your car": "为你的汽车写下“Make for your car”",
|
||||||
|
"write Model for your car": "为您的汽车编写型号",
|
||||||
|
"Write note": "写笔记",
|
||||||
|
"write vin for your car": "为您的汽车写入 vin",
|
||||||
|
"write Year for your car": "写下你的车的年份",
|
||||||
|
"Year": "年",
|
||||||
|
"year :": "年 :",
|
||||||
|
"Year is": "年份是",
|
||||||
|
"yellow": "أصفر",
|
||||||
|
"Yes": "是的",
|
||||||
|
"Yes, you can cancel your ride under certain conditions (e.g., before driver is assigned). See the Sefer cancellation policy for details.": "是的,您可以在某些情况下取消行程(例如,在分配司机之前)。详情请参阅 Sefer 取消政策。",
|
||||||
|
"You are Delete": "你正在删除",
|
||||||
|
"You are not in near to passenger location": "您不在乘客位置附近",
|
||||||
|
"You are Stopped": "你被阻止了",
|
||||||
|
"You Are Stopped For this Day !": "今天你就被阻止了!",
|
||||||
|
"You can buy points from your budget": "您可以从预算中购买积分",
|
||||||
|
"You can buy Points to let you online": "您可以购买积分让您上网",
|
||||||
|
"You Can cancel Ride After Captain did not come in the time": "队长未按时到达后您可以取消乘车",
|
||||||
|
"You can cancel Ride now": "您现在可以取消行程",
|
||||||
|
"You can cancel trip": "您可以取消行程",
|
||||||
|
"You Can Cancel Trip And get Cost of Trip From": "您可以取消行程并获取行程费用:",
|
||||||
|
"You can change the Country to get all features": "您可以更改国家/地区以获得所有功能",
|
||||||
|
"You can change the language of the app": "您可以更改应用程序的语言",
|
||||||
|
"You can decline a request without any cost": "您可以拒绝请求,无需支付任何费用",
|
||||||
|
"You can\\\"t cancel!": "您无法取消!",
|
||||||
|
"You can\\\"t continue with us .": "你不能继续和我们在一起。",
|
||||||
|
"You dont Add Emergency Phone Yet!": "您还没有添加紧急电话!",
|
||||||
|
"You Dont Have Any amount in": "您没有任何金额",
|
||||||
|
"You Dont Have Any places yet !": "您还没有任何位置!",
|
||||||
|
"You dont have Points": "您没有积分",
|
||||||
|
"You Earn today is": "您今天的收入是",
|
||||||
|
"you gain": "你获得",
|
||||||
|
"You Have": "你有",
|
||||||
|
"You have": "你有",
|
||||||
|
"you have a negative balance of": "您的余额为负数",
|
||||||
|
"You have finished all times": "你已经完成了所有时间",
|
||||||
|
"You Have in": "你已经在",
|
||||||
|
"You have in account": "您账户中有",
|
||||||
|
"You have promo!": "你有促销!",
|
||||||
|
"You Have Tips": "你有秘诀",
|
||||||
|
"You must be charge your Account": "您必须向您的帐户收费",
|
||||||
|
"You must Verify email !.": "您必须验证电子邮件!",
|
||||||
|
"You Refused 3 Rides this Day that is the reason": "您今天拒绝了 3 次乘车,这就是原因",
|
||||||
|
"You Should be select reason.": "你应该选择理由。",
|
||||||
|
"You Should choose rate figure": "您应该选择费率数字",
|
||||||
|
"You should renew Driver license": "您应该更新驾驶执照",
|
||||||
|
"You should select one": "你应该选择一个",
|
||||||
|
"You trip distance is": "您的行程距离是",
|
||||||
|
"You will arrive to your destination after": "您将在之后到达目的地",
|
||||||
|
"You will arrive to your destination after timer end.": "计时器结束后您将到达目的地。",
|
||||||
|
"You will be pay the cost to driver or we will get it from you on next trip": "您将向司机支付费用,或者我们将在下次行程时向您收取费用",
|
||||||
|
"You will be thier in": "你将会在",
|
||||||
|
"You will choose allow all the time to be ready receive orders": "您将选择允许所有时间准备好接收订单",
|
||||||
|
"You will choose one of above !": "您将选择以上之一!",
|
||||||
|
"You will get cost of your work for this trip": "您将获得本次旅行的工作费用",
|
||||||
|
"you will pay to Driver": "您将支付给司机",
|
||||||
|
"you will pay to Driver you will be pay the cost of driver time look to your SEFER Wallet": "您将向司机付款 您将支付司机时间费用 请查看您的 SEFER 钱包",
|
||||||
|
"You will recieve code in sms message": "您将在短信中收到代码",
|
||||||
|
"Your Account is Deleted": "您的帐户已删除",
|
||||||
|
"Your are far from passenger location": "您距离乘客位置较远",
|
||||||
|
"Your Budget less than needed": "您的预算低于所需",
|
||||||
|
"Your data will be erased after 2 weeks": "您的数据将在 2 周后被删除",
|
||||||
|
"Your driver’s license and/or car tax has expired. Please renew them before proceeding.": "لقد انتهت صلاحية رخصة القيادة و/أو ضريبة السيارة الخاصة بك. يرجى تجديدها قبل المتابعة.",
|
||||||
|
"Your driver’s license has expired. Please renew it before proceeding.": "لقد انتهت صلاحية رخصة القيادة الخاصة بك. يرجى تجديدها قبل المتابعة.",
|
||||||
|
"Your fee is": "您的费用是",
|
||||||
|
"Your name": "你的名字",
|
||||||
|
"Your password": "你的密码",
|
||||||
|
"Your Ride Duration is": "您的骑行时间是",
|
||||||
|
"your ride is applied": "您的行程已被应用",
|
||||||
|
"Your trip cost is": "您的旅行费用是",
|
||||||
|
"Your trip distance is": "您的行程距离是",
|
||||||
|
"Your Wallet balance is": "您的钱包余额是",
|
||||||
|
"YYYY-MM-DD": "YYYY-MM-DD",
|
||||||
|
"أدخل الرمز هنا": "أدخل الرمز هنا",
|
||||||
|
"إنشاء حساب موظف": "إنشاء حساب موظف",
|
||||||
|
"الْمَجْمُوع هُوَ": "🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟",
|
||||||
|
"بطاقة الائتمان هي": "巴巴巴",
|
||||||
|
"تحقق": "تحقق",
|
||||||
|
"تم إرسال رمز التحقق إلى رقمك (\$phone)": "تم إرسال رمز التحقق إلى رقمك (\$phone)",
|
||||||
|
"تم إرسال رمز التحقق إلى رقمك (\$phoneNumber)": "تم إرسال رمز التحقق إلى رقمك (\$phoneNumber)",
|
||||||
|
"خطأ": "خطأ",
|
||||||
|
"خطأ', 'الرجاء إدخال رمز صحيح": "خطأ', 'الرجاء إدخال رمز صحيح",
|
||||||
|
"رمز التحقق": "رمز التحقق",
|
||||||
|
"فَاسْتَحِقَّ فُلُوسَك وَاكْسِب النِّقَاط": "❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️",
|
||||||
|
"لا تستطيع الغاء الرحله": "??????????????????????????????????????????????????????????????????????????????",
|
||||||
|
"لديك حساب بالفعل؟ ": "لديك حساب بالفعل؟ ",
|
||||||
|
"لَدَيْك": "😄😄😄😄😄",
|
||||||
|
"لِقَائِنَا غَدًا!": "吖吖吖吖!",
|
||||||
|
"مع الراكب": "请注意",
|
||||||
|
"من خلال القائمة أدناه": "🇨🇳 🇨🇳",
|
||||||
|
"موافق": "موافق",
|
||||||
|
"نجاح": "نجاح",
|
||||||
|
"وَلَن تَسْتَطِيع اسْتِخْدَام التَّطْبِيق مَرَّة أُخْرَى بَعْد شَهْر": "驶",
|
||||||
|
"يُلْغِي الرَّاكِب الرِّحْلَة": "🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟",
|
||||||
|
"ُExpire Date": "到期日期",
|
||||||
|
"⏳ Approval Queue": "⏳ Approval Queue",
|
||||||
|
"⚡ Quick Actions": "⚡ Quick Actions",
|
||||||
|
"📊 Reporting & Quality": "📊 Reporting & Quality",
|
||||||
|
"🔍 Search & Inquiries": "🔍 Search & Inquiries",
|
||||||
|
"🚗 Vehicle Management": "🚗 Vehicle Management",
|
||||||
|
};
|
||||||
870
siro_service/lib/controller/local/ar_sy.dart
Normal file
870
siro_service/lib/controller/local/ar_sy.dart
Normal file
@@ -0,0 +1,870 @@
|
|||||||
|
final Map<String, String> ar_sy = {
|
||||||
|
" phone": " phone",
|
||||||
|
"\${'Please enter": "\${'Please enter",
|
||||||
|
"\${'Step": "\${'Step",
|
||||||
|
". I am at least 18 years of age.": "。我已年满 18 岁。",
|
||||||
|
"10 and get 4% discount": "满 10 即可享受 4% 折扣",
|
||||||
|
"100 and get 11% discount": "满 100 即可享受 11% 折扣",
|
||||||
|
"20 and get 6% discount": "满 20 即可享受 6% 折扣",
|
||||||
|
"40 and get 8% discount": "满 40 即可享受 8% 折扣",
|
||||||
|
"5 digit": "5位数字",
|
||||||
|
"\\\$": "\\\$",
|
||||||
|
"Accept Order": "接受订单",
|
||||||
|
"Accept Ride's Terms & Review Privacy Notice": "接受乘车条款并查看隐私声明",
|
||||||
|
"accepted your order": "已接受您的订单",
|
||||||
|
"Account Number": "رقم الحساب",
|
||||||
|
"Active Duration:": "活跃时间:",
|
||||||
|
"Add": "Add",
|
||||||
|
"Add car": "Add car",
|
||||||
|
"Add Car Who Wants to Work": "أضف السيارة التي ترغب في العمل",
|
||||||
|
"Add Card": "添加卡",
|
||||||
|
"Add Credit Card": "添加信用卡",
|
||||||
|
"Add Driver Who Wants to Work": "إضافة سائق يرغب في العمل",
|
||||||
|
"Add Location": "添加位置",
|
||||||
|
"Add Location 1": "添加位置 1",
|
||||||
|
"Add Location 2": "添加位置 2",
|
||||||
|
"Add Location 3": "添加位置 3",
|
||||||
|
"Add Location 4": "添加位置 4",
|
||||||
|
"Add Payment Method": "添加付款方式",
|
||||||
|
"Add Phone": "添加电话",
|
||||||
|
"Add Promo": "添加促销",
|
||||||
|
"Add Stops": "添加停靠点",
|
||||||
|
"Added successfully": "Added successfully",
|
||||||
|
"Additional comments": "تعليقات إضافية.",
|
||||||
|
"Address": "地址",
|
||||||
|
"Address:": "地址:",
|
||||||
|
"Admin DashBoard": "管理仪表板",
|
||||||
|
"After this period": "这段时间之后",
|
||||||
|
"Age": "年龄",
|
||||||
|
"Age is": "年龄是",
|
||||||
|
"AI Page": "人工智能页面",
|
||||||
|
"Alexandria": "Alexandria",
|
||||||
|
"An error occurred during the payment process.": "付款过程中发生错误。",
|
||||||
|
"An error occurred: \$error": "An error occurred: \$error",
|
||||||
|
"and I have a trip on": "我有一次旅行",
|
||||||
|
"And you will can't return to use app after 1 month": "1 个月后您将无法返回使用应用程序",
|
||||||
|
"App with Passenger": "乘客应用程序",
|
||||||
|
"app_description": "应用程序描述",
|
||||||
|
"Apply Order": "申请订单",
|
||||||
|
"Apply Ride": "Apply Ride",
|
||||||
|
"Are you sure to cancel?": "您确定要取消吗?",
|
||||||
|
"Are you sure to delete recorded files": "您确定要删除录音文件吗",
|
||||||
|
"Are you sure to delete your account?": "您确定要删除您的帐户吗?",
|
||||||
|
"Are you Sure to LogOut?": "您确定要退出吗?",
|
||||||
|
"are you sure to pay to this driver gift": "are you sure to pay to this driver gift",
|
||||||
|
"Are You sure to ride to": "您确定要乘车前往",
|
||||||
|
"Are you want to go this site": "你想去这个网站吗",
|
||||||
|
"Are you want to go to this site": "你想访问这个网站吗",
|
||||||
|
"Arrival time": "到达时间",
|
||||||
|
"arrival time to reach your point": "到达目的地的到达时间",
|
||||||
|
"as the driver.": "作为司机。",
|
||||||
|
"Associate Degree": "副学士学位",
|
||||||
|
"Available for rides": "可乘坐",
|
||||||
|
"Average of Hours of": "平均小时数",
|
||||||
|
"Average Rating": "التقييم المتوسط",
|
||||||
|
"Avg Passenger Rating": "متوسط تقييم الركاب",
|
||||||
|
"aاسْتِخْرَاج رُخْصَة السَّيَّارَة.": "是的。",
|
||||||
|
"Bachelor's Degree": "学士学位",
|
||||||
|
"Back": "后退",
|
||||||
|
"Bahrain": "巴林",
|
||||||
|
"Bank Code": "رمز البنك",
|
||||||
|
"Bank Information": "معلومات البنك",
|
||||||
|
"Be Slowly": "慢慢来",
|
||||||
|
"Be sure for take accurate images please": "请务必拍摄准确的图像",
|
||||||
|
"Best choice for comfort car and flexible route and stops point": "舒适用车、灵活路线和停靠点的最佳选择",
|
||||||
|
"best driver": "best driver",
|
||||||
|
"Best Drivers": "Best Drivers",
|
||||||
|
"Birth Date": "出生日期",
|
||||||
|
"Birthdate": "تاريخ الميلاد",
|
||||||
|
"black": "أسود",
|
||||||
|
"blue": "أزرق",
|
||||||
|
"BookingFee": "预订费",
|
||||||
|
"Bottom Bar Example": "底栏示例",
|
||||||
|
"Bronze": "برونزي",
|
||||||
|
"brown": "بني",
|
||||||
|
"But you have a negative salary of": "但你的工资为负数",
|
||||||
|
"By selecting 'I Agree' below, I have reviewed and agree to the Terms of Use and acknowledge the": "通过选择下面的“我同意”,我已阅读并同意使用条款并承认",
|
||||||
|
"By selecting 'I Agree' below, I have reviewed and agree to the Terms of Use and acknowledge the Privacy Notice. I am at least 18 years of age.": "选择下面的“我同意”,即表示我已查看并同意使用条款并承认隐私声明。我已年满 18 岁。",
|
||||||
|
"by this list below": "通过下面的列表",
|
||||||
|
"Call Driver": "اتصل بالسائق",
|
||||||
|
"Call End": "通话结束",
|
||||||
|
"Camera Access Denied.": "相机访问被拒绝。",
|
||||||
|
"Camera not initialized yet": "相机尚未初始化",
|
||||||
|
"Camera not initilaized yet": "相机尚未初始化",
|
||||||
|
"Can I cancel my ride?": "我可以取消行程吗?",
|
||||||
|
"Can we know why you want to cancel Ride ?": "我们可以知道您为什么要取消行程吗?",
|
||||||
|
"Cancel": "取消",
|
||||||
|
"Cancel Ride": "取消乘车",
|
||||||
|
"Cancel Trip": "取消行程",
|
||||||
|
"Canceled": "取消",
|
||||||
|
"Capture an Image of Your car license back": "拍回您的汽车驾照图像",
|
||||||
|
"Capture an Image of Your car license front": "拍摄您的汽车牌照正面的图像",
|
||||||
|
"Capture an Image of Your Criminal Record": "拍摄您的犯罪记录图像",
|
||||||
|
"Capture an Image of Your Driver License": "拍摄您的驾驶执照的图像",
|
||||||
|
"Capture an Image of Your Driver’s License": "拍摄您的驾驶执照的图像",
|
||||||
|
"Capture an Image of Your ID Document Back": "拍摄您的身份证件图像",
|
||||||
|
"Capture an Image of Your ID Document front": "拍摄您的身份证件正面的图像",
|
||||||
|
"Car Color": "Car Color",
|
||||||
|
"Car Details": "汽车详情",
|
||||||
|
"Car Kind": "汽车种类",
|
||||||
|
"Car License Card": "汽车牌照",
|
||||||
|
"Car Plate": "车牌",
|
||||||
|
"car plate": "car plate",
|
||||||
|
"Car Plate is": "车牌是",
|
||||||
|
"Car Type": "نوع السيارة",
|
||||||
|
"Card ID": "رقم بطاقة الهوية",
|
||||||
|
"Card Number": "卡号",
|
||||||
|
"CardID": "卡号",
|
||||||
|
"Categories": "التصنيفات",
|
||||||
|
"Champagne": "شامبان",
|
||||||
|
"Change Country": "Ülke değiştir",
|
||||||
|
"Changes saved successfully": "تم حفظ التغييرات بنجاح",
|
||||||
|
"Chassis": "机壳",
|
||||||
|
"Choose from Map": "从地图中选择",
|
||||||
|
"Choose Language": "选择语言",
|
||||||
|
"City": "城市",
|
||||||
|
"Click here point": "点击这里点",
|
||||||
|
"Click here to Show it in Map": "单击此处在地图中显示它",
|
||||||
|
"Closest & Cheapest": "最近且最便宜",
|
||||||
|
"Color": "颜色",
|
||||||
|
"Color is": "颜色是",
|
||||||
|
"committed_to_safety": "致力于安全",
|
||||||
|
"Complaints": "الشكاوى",
|
||||||
|
"Confirm": "确认",
|
||||||
|
"Confirm Selection": "确认选择",
|
||||||
|
"Connected": "连接的",
|
||||||
|
"Contact us for any questions on your order.": "如果您对订单有任何疑问,请联系我们。",
|
||||||
|
"Copy this Promo to use it in your Ride!": "复制此促销信息以在您的骑行中使用!",
|
||||||
|
"Cost Duration": "费用持续时间",
|
||||||
|
"Cost Of Trip IS": "旅行费用是",
|
||||||
|
"Counts of Hours on days": "每天的小时数",
|
||||||
|
"Create Wallet to receive your money": "创建钱包来接收您的钱",
|
||||||
|
"Created At": "أنشئ في",
|
||||||
|
"created time": "创建时间",
|
||||||
|
"Credit card is": "信用卡是",
|
||||||
|
"Criminal Record": "犯罪记录",
|
||||||
|
"Cropper": "农作物",
|
||||||
|
"Current Location": "当前位置",
|
||||||
|
"cyan": "سماوي",
|
||||||
|
"Dark Red": "نبيتي",
|
||||||
|
"Date": "تاريخ",
|
||||||
|
"Date of Birth": "出生日期",
|
||||||
|
"Date of Birth is": "出生日期是",
|
||||||
|
"Date of Birth:": "出生日期:",
|
||||||
|
"Days": "天",
|
||||||
|
"Delete My Account": "删除我的账户",
|
||||||
|
"Deleted": "已删除",
|
||||||
|
"Destination": "目的地",
|
||||||
|
"Destination selected": "已选择目的地",
|
||||||
|
"Detect Your Face": "检测你的脸",
|
||||||
|
"Displacement": "移位",
|
||||||
|
"Distance": "مسافة",
|
||||||
|
"Distance from Passenger to destination is": "乘客到目的地的距离为",
|
||||||
|
"distance is": "距离是",
|
||||||
|
"Distance is": "距离是",
|
||||||
|
"Distance of the Ride is": "骑行距离为",
|
||||||
|
"Distance To Passenger is": "到乘客的距离是",
|
||||||
|
"Do you want to change Home location": "您想更改家庭位置吗",
|
||||||
|
"Do you want to change Work location": "您想更改工作地点吗",
|
||||||
|
"Do you want to pay Tips for this Driver": "您想为此司机支付小费吗",
|
||||||
|
"Doctoral Degree": "博士学位",
|
||||||
|
"Document Number:": "文件号码:",
|
||||||
|
"Documents check": "文件检查",
|
||||||
|
"Done": "Done",
|
||||||
|
"Driver": "司机",
|
||||||
|
"Driver Applied the Ride for You": "司机为您申请行程",
|
||||||
|
"Driver Cancel Your Trip": "司机取消您的行程",
|
||||||
|
"Driver Car Plate": "司机车牌",
|
||||||
|
"Driver details by national number": "Driver details by national number",
|
||||||
|
"Driver details by phone": "تفاصيل السائق حسب رقم الهاتف",
|
||||||
|
"Driver Finish Trip": "司机完成行程",
|
||||||
|
"Driver has been activated successfully!": "Driver has been activated successfully!",
|
||||||
|
"Driver Information": "معلومات عن السائق",
|
||||||
|
"Driver Name": "司机姓名",
|
||||||
|
"Driver not found": "Driver not found",
|
||||||
|
"Driver phone": "司机电话",
|
||||||
|
"Driver Registration & Requirements": "司机注册和要求",
|
||||||
|
"Driver Statistics": "إحصاءات السائق",
|
||||||
|
"Driver Wallet": "司机钱包",
|
||||||
|
"Driver's License": "驾照",
|
||||||
|
"driver_license": "驾驶执照",
|
||||||
|
"Drivers Activity": "نشاط السائقين",
|
||||||
|
"Drivers Cant Register": "السائقون لا يستطيعون التسجيل",
|
||||||
|
"Drivers License Class": "驾驶执照等级",
|
||||||
|
"Drivers License Class:": "驾驶执照类别:",
|
||||||
|
"Drivers phones not register": "هواتف السائقين غير مسجلة",
|
||||||
|
"Drivers waitting Register": "السائقون في انتظار التسجيل",
|
||||||
|
"Drivers Want Register": "السائقون يريدون التسجيل",
|
||||||
|
"duration is": "持续时间是",
|
||||||
|
"Duration is": "持续时间是",
|
||||||
|
"Duration of the Ride is": "骑行持续时间为",
|
||||||
|
"Duration of Trip is": "行程持续时间为",
|
||||||
|
"Duration To Passenger is": "到达乘客的时间是",
|
||||||
|
"Edit car details": "Edit car details",
|
||||||
|
"Edit car plate": "تعديل لوحة السيارة",
|
||||||
|
"Edit Profile": "编辑个人资料",
|
||||||
|
"Edit Your data": "编辑您的数据",
|
||||||
|
"Education": "教育",
|
||||||
|
"Eggplant": "باذنجان",
|
||||||
|
"Egypt": "埃及",
|
||||||
|
"Email": "البريد الإلكتروني",
|
||||||
|
"Email is": "电子邮件是",
|
||||||
|
"Email Us": "给我们发电子邮件",
|
||||||
|
"Email Wrong": "电子邮件错误",
|
||||||
|
"Email you inserted is Wrong.": "您输入的电子邮件有误。",
|
||||||
|
"Employment": "عمل",
|
||||||
|
"Employment Type": "雇佣类型",
|
||||||
|
"End Ride": "结束骑行",
|
||||||
|
"End Time": "وقت الانتهاء",
|
||||||
|
"Enjoy a safe and comfortable ride.": "享受安全舒适的乘车体验。",
|
||||||
|
"Enter notes after call": "أدخل الملاحظات بعد المكالمة",
|
||||||
|
"Enter notes here...": "أدخل الملاحظات هنا...",
|
||||||
|
"Enter promo code": "输入促销代码",
|
||||||
|
"Enter your email address": "输入你的电子邮箱地址",
|
||||||
|
"Enter your feedback here": "在此输入您的反馈",
|
||||||
|
"Enter your first name": "输入您的名字",
|
||||||
|
"Enter Your First Name": "输入您的名字",
|
||||||
|
"Enter your last name": "输入您的姓氏",
|
||||||
|
"Enter your Note": "输入您的备注",
|
||||||
|
"Enter your phone number": "输入你的电话号码",
|
||||||
|
"Error": "错误",
|
||||||
|
"Error', 'Failed to send OTP": "Error', 'Failed to send OTP",
|
||||||
|
"Error', 'Invalid OTP": "Error', 'Invalid OTP",
|
||||||
|
"Evening": "晚上",
|
||||||
|
"Exclusive offers and discounts always with the Sefer app": "Sefer 应用程序始终提供独家优惠和折扣",
|
||||||
|
"Expiration Date": "截止日期",
|
||||||
|
"Expiry Date": "到期日",
|
||||||
|
"Expiry Date:": "到期日:",
|
||||||
|
"Failed to update driver: \${decodedResponse is Map ? decodedResponse['message'] : 'failure'}": "Failed to update driver: \${decodedResponse is Map ? decodedResponse['message'] : 'failure'}",
|
||||||
|
"Favorite Places": "最喜欢的地方",
|
||||||
|
"Fee is": "费用为",
|
||||||
|
"Feed Back": "反馈",
|
||||||
|
"Feedback": "反馈",
|
||||||
|
"Feedback data saved successfully": "反馈数据保存成功",
|
||||||
|
"Female": "女性",
|
||||||
|
"First Name": "名",
|
||||||
|
"First name": "名",
|
||||||
|
"Flag-down fee": "降旗费",
|
||||||
|
"For Speed and Delivery trips, the price is calculated dynamically. For Comfort trips, the price is based on time and distance": "对于速度和送货行程,价格是动态计算的。对于舒适旅行,价格根据时间和距离而定",
|
||||||
|
"Frequently Questions": "常见问题",
|
||||||
|
"from 07:30 till 10:30 (Thursday, Friday, Saturday, Monday)": "07:30 至 10:30(周四、周五、周六、周一)",
|
||||||
|
"from 12:00 till 15:00 (Thursday, Friday, Saturday, Monday)": "12:00 至 15:00(周四、周五、周六、周一)",
|
||||||
|
"from 23:59 till 05:30": "23:59 至 05:30",
|
||||||
|
"from 3 times Take Attention": "3次起 注意",
|
||||||
|
"From :": "从 :",
|
||||||
|
"From : Current Location": "来自 : 当前位置",
|
||||||
|
"from your list": "从你的清单中",
|
||||||
|
"Fuel": "燃料",
|
||||||
|
"Fuel Type": "نوع الوقود",
|
||||||
|
"Full Name": "全名",
|
||||||
|
"Full Name (Marital)": "全名(婚姻)",
|
||||||
|
"FullName": "全名",
|
||||||
|
"Gender": "性别",
|
||||||
|
"Get Details of Trip": "获取行程详情",
|
||||||
|
"Get Direction": "得到指引",
|
||||||
|
"Get to your destination quickly and easily.": "快速、轻松地到达目的地。",
|
||||||
|
"get_a_ride": "搭个便车",
|
||||||
|
"get_to_destination": "到达目的地",
|
||||||
|
"Giza": "Giza",
|
||||||
|
"Go To Favorite Places": "去最喜欢的地方",
|
||||||
|
"Go to next step": "进入下一步",
|
||||||
|
"Go to passenger Location now": "立即前往乘客位置",
|
||||||
|
"Go to this Target": "前往该目标",
|
||||||
|
"go to your passenger location before": "前往您的乘客位置之前",
|
||||||
|
"gold": "ذهبي",
|
||||||
|
"GPS Required Allow !.": "需要 GPS 允许!。",
|
||||||
|
"gray": "رمادي",
|
||||||
|
"green": "أخضر",
|
||||||
|
"H and": "手",
|
||||||
|
"Height:": "高度:",
|
||||||
|
"Hello this is Captain": "你好,这是队长",
|
||||||
|
"Hello this is Driver": "你好,这是司机",
|
||||||
|
"Hello, I'm at the agreed-upon location": "你好,我已经到了约定的地点",
|
||||||
|
"Help Details": "帮助详情",
|
||||||
|
"Helping Center": "帮助中心",
|
||||||
|
"Here recorded trips audio": "这里记录了旅行音频",
|
||||||
|
"Hi": "你好",
|
||||||
|
"Hi ,I Arrive your site": "你好,我到达你的网站",
|
||||||
|
"Hi ,I will go now": "嗨,我现在就去",
|
||||||
|
"Hi! This is": "你好!这是",
|
||||||
|
"Hi, Where to": "你好,去哪里",
|
||||||
|
"High School Diploma": "高中毕业文凭",
|
||||||
|
"History of Trip": "旅行历史",
|
||||||
|
"Home": "家",
|
||||||
|
"Home Page": "主页",
|
||||||
|
"Home Saved": "已保存首页",
|
||||||
|
"How can I pay for my ride?": "我如何支付乘车费用?",
|
||||||
|
"How can I register as a driver?": "我如何注册成为司机?",
|
||||||
|
"How do I communicate with the other party (passenger/driver)?": "如何与对方(乘客/司机)沟通?",
|
||||||
|
"How do I request a ride?": "我如何叫车?",
|
||||||
|
"I added the wrong pick-up/drop-off location": "我添加了错误的接送地点",
|
||||||
|
"I Agree": "我同意",
|
||||||
|
"I am currently located at": "我目前位于",
|
||||||
|
"I am using": "我在用",
|
||||||
|
"I arrive you": "我到达你",
|
||||||
|
"I Arrive your site": "我到达你的网站",
|
||||||
|
"I cant register in your app in face detection": "我无法在您的应用程序中注册人脸检测",
|
||||||
|
"I don't have a reason": "我没有理由",
|
||||||
|
"I don't have a suitable vehicle": "ليس لدي مركبة مناسبة",
|
||||||
|
"I don't need a ride anymore": "我不再需要搭车了",
|
||||||
|
"I need more help understanding the app": "أحتاج إلى المزيد من المساعدة لفهم التطبيق",
|
||||||
|
"I was just trying the application": "我只是在尝试该应用程序",
|
||||||
|
"I will go now": "我要走了",
|
||||||
|
"I will slow down": "我会放慢脚步",
|
||||||
|
"I'll register when the app is fully launched": "سأسجل عندما يتم إطلاق التطبيق بالكامل",
|
||||||
|
"I'm not ready yet": "لست جاهزًا بعد",
|
||||||
|
"I'm waiting for you": "我在等你",
|
||||||
|
"ID Documents Back": "身份证件 返回",
|
||||||
|
"ID Documents Front": "身份证件正面",
|
||||||
|
"if you don\\\"t have account": "如果您没有帐户",
|
||||||
|
"if you dont have account": "如果您没有帐户",
|
||||||
|
"If you in Car Now. Press Start The Ride": "如果你现在在车里。按开始骑行",
|
||||||
|
"If you need to reach me, please contact the driver directly at": "如果您需要联系我,请直接联系司机",
|
||||||
|
"If you want add stop click here": "如果您想添加停靠站,请单击此处",
|
||||||
|
"if you want help you can email us here": "如果您需要帮助,您可以在这里给我们发电子邮件",
|
||||||
|
"If you want to make Google Map App run directly when you apply order": "如果您想让Google Map App在申请订单时直接运行",
|
||||||
|
"Image detecting result is": "图像检测结果为",
|
||||||
|
"Image not available": "Image not available",
|
||||||
|
"Image Upload Failed": "Image Upload Failed",
|
||||||
|
"image verified": "图像已验证",
|
||||||
|
"in your": "在你的",
|
||||||
|
"in your wallet": "在你的钱包里",
|
||||||
|
"Inatleq Service": "Inatleq Service",
|
||||||
|
"Including Tax": "含税",
|
||||||
|
"Increase Fee": "增加费用",
|
||||||
|
"indigo": "نيلي",
|
||||||
|
"Insert": "插入",
|
||||||
|
"insert amount": "插入量",
|
||||||
|
"Insert birth_date of Driver": "أدخل تاريخ ميلاد السائق",
|
||||||
|
"Insert car_model of Driver": "أدخل طراز السيارة للسائق",
|
||||||
|
"Insert car_number of Driver": "أدخل رقم سيارة السائق",
|
||||||
|
"Insert car_type of Driver": "أدخل نوع السيارة للسائق",
|
||||||
|
"insert Driver national": "insert Driver national",
|
||||||
|
"insert Driver phone": "أدخل رقم هاتف السائق",
|
||||||
|
"Insert Emergincy Number": "插入紧急号码",
|
||||||
|
"Insert license type of Driver": "أدخل نوع رخصة السائق",
|
||||||
|
"Insert Name of Driver": "أدخل اسم السائق",
|
||||||
|
"Insert Name of Owner": "أدخل اسم المالك",
|
||||||
|
"Insert national ID of Driver": "أدخل الرقم الوطني للسائق",
|
||||||
|
"insert passenger phone": "أدخل رقم هاتف الراكب",
|
||||||
|
"Insert phone of Driver": "أدخل رقم هاتف السائق",
|
||||||
|
"Insert phone of Owner": "أدخل هاتف المالك",
|
||||||
|
"Insert registration_date of Car": "أدخل تاريخ تسجيل السيارة",
|
||||||
|
"Insert registration_date of Driver": "",
|
||||||
|
"Insert site of Driver": "أدخل موقع السائق",
|
||||||
|
"Insert site of Owner": "أدخل موقع المالك",
|
||||||
|
"Insert year of Car": "أدخل سنة السيارة",
|
||||||
|
"Inspection Date": "检验日期",
|
||||||
|
"InspectionResult": "检查结果",
|
||||||
|
"Invalid MPIN": "MPIN 无效",
|
||||||
|
"Invalid OTP": "无效一次性密码",
|
||||||
|
"is driving a": "正在驾驶",
|
||||||
|
"is ON for this month": "本月已开启",
|
||||||
|
"Is the Passenger in your Car ?": "乘客在你的车里吗?",
|
||||||
|
"Issue Date": "签发日期",
|
||||||
|
"IssueDate": "签发日期",
|
||||||
|
"Issues": "Issues",
|
||||||
|
"JOD": "乔德",
|
||||||
|
"Join": "加入",
|
||||||
|
"Jordan": "约旦",
|
||||||
|
"KM": "知识管理",
|
||||||
|
"Kuwait": "科威特",
|
||||||
|
"Language": "语言",
|
||||||
|
"Last name": "姓",
|
||||||
|
"Last Payment Amount": "مبلغ آخر دفعة",
|
||||||
|
"Last Payment Method": "آخر طريقة دفع",
|
||||||
|
"Latest Recent Trip": "最近最近的旅行",
|
||||||
|
"Latest Ride": "أحدث رحلة",
|
||||||
|
"LE": "LE",
|
||||||
|
"Leave": "离开",
|
||||||
|
"Lets check Car license": "让我们检查一下汽车牌照",
|
||||||
|
"Lets check License Back Face": "让我们检查许可证背面",
|
||||||
|
"License Categories": "许可证类别",
|
||||||
|
"License Information": "معلومات الرخصة",
|
||||||
|
"License Type": "许可证类型",
|
||||||
|
"lime": "ليموني",
|
||||||
|
"Log Off": "注销",
|
||||||
|
"Log Out Page": "注销页面",
|
||||||
|
"Login": "登录",
|
||||||
|
"Login Captin": "登录队长",
|
||||||
|
"Login Driver": "登录驱动程序",
|
||||||
|
"m": "米",
|
||||||
|
"Made :": "制成 :",
|
||||||
|
"magenta": "بنفسجي",
|
||||||
|
"Make": "制作",
|
||||||
|
"Make is": "品牌是",
|
||||||
|
"Male": "男性",
|
||||||
|
"Map Passenger": "地图乘客",
|
||||||
|
"Marital Status": "婚姻状况",
|
||||||
|
"Maroon": "ماروني",
|
||||||
|
"Master's Degree": "硕士",
|
||||||
|
"Maximum fare": "最高票价",
|
||||||
|
"message From passenger": "乘客留言",
|
||||||
|
"message'].toString().tr : 'فشل تسجيل الدخول": "message'].toString().tr : 'فشل تسجيل الدخول",
|
||||||
|
"Minimum fare": "最低票价",
|
||||||
|
"Minute": "分钟",
|
||||||
|
"Minutes": "分钟",
|
||||||
|
"Mocha": "موكا",
|
||||||
|
"Model": "模型",
|
||||||
|
"model :": "模型 :",
|
||||||
|
"Model is": "型号是",
|
||||||
|
"Morning": "早晨",
|
||||||
|
"Multiplier": "مضاعف",
|
||||||
|
"My Card": "我的卡",
|
||||||
|
"My Cared": "我的关心",
|
||||||
|
"My current location is:": "我当前的位置是:",
|
||||||
|
"My documents have expired": "وثائقي منتهية الصلاحية",
|
||||||
|
"my location": "我的位置",
|
||||||
|
"My location is correct. You can search for me using the navigation app": "我的位置是正确的。您可以使用导航应用程序搜索我",
|
||||||
|
"My Profile": "我的简历",
|
||||||
|
"My Wallet": "我的钱包",
|
||||||
|
"MyLocation": "我的位置",
|
||||||
|
"N/A": "不适用",
|
||||||
|
"Name": "姓名",
|
||||||
|
"Name (Arabic)": "姓名(阿拉伯语)",
|
||||||
|
"Name (English)": "姓名(英文)",
|
||||||
|
"Name :": "姓名 :",
|
||||||
|
"Name Arabic": "Name Arabic",
|
||||||
|
"Name English": "Name English",
|
||||||
|
"Name in arabic": "阿拉伯语名称",
|
||||||
|
"Name of the Passenger is": "乘客姓名是",
|
||||||
|
"National ID": "国民身份证",
|
||||||
|
"National Number": "国家号码",
|
||||||
|
"NationalID": "国民身份证",
|
||||||
|
"navy": "كحلي",
|
||||||
|
"Nearest Car for you about": "距离您最近的汽车",
|
||||||
|
"New": "New",
|
||||||
|
"Next": "下一个",
|
||||||
|
"Night": "夜晚",
|
||||||
|
"No ,still Waiting.": "不,还在等待。",
|
||||||
|
"No accepted orders? Try raising your trip fee to attract riders.": "没有接受订单?尝试提高行程费用以吸引乘客。",
|
||||||
|
"No Car found yet": "No Car found yet",
|
||||||
|
"No Car in your site. Sorry!": "您的网站上没有汽车。对不起!",
|
||||||
|
"No Car or Driver Found in your area.": "在您所在的地区找不到汽车或司机。",
|
||||||
|
"No driver accepted my request": "没有司机接受我的请求",
|
||||||
|
"No drivers found": "No drivers found",
|
||||||
|
"No face detected": "未检测到人脸",
|
||||||
|
"No I want": "不,我想",
|
||||||
|
"No image selected yet": "尚未选择图像",
|
||||||
|
"No Promo for today .": "今天没有促销。",
|
||||||
|
"No Response yet.": "尚未回复。",
|
||||||
|
"No ride found yet": "尚未找到乘车路线",
|
||||||
|
"No SIM card, no problem! Call your driver directly through our app. We use advanced technology to ensure your privacy.": "没有SIM卡,没问题!通过我们的应用程序直接致电您的司机。我们使用先进的技术来确保您的隐私。",
|
||||||
|
"No trip yet found": "尚未找到行程",
|
||||||
|
"No, thanks": "不,谢谢",
|
||||||
|
"No,I want": "不,我想",
|
||||||
|
"Not Connected": "未连接",
|
||||||
|
"Not found any image": "لم يتم العثور على أي صورة",
|
||||||
|
"note'] ?? 'Enter notes after call": "note'] ?? 'Enter notes after call",
|
||||||
|
"Notes": "ملاحظات",
|
||||||
|
"notes'] ?? 'Enter notes here...": "notes'] ?? 'Enter notes here...",
|
||||||
|
"Notes:": "ملاحظات:",
|
||||||
|
"Notifications": "通知",
|
||||||
|
"Now select start pick": "现在选择开始选择",
|
||||||
|
"Occupation": "职业",
|
||||||
|
"of": "of",
|
||||||
|
"Ok": "好的",
|
||||||
|
"Ok , See you Tomorrow": "好的明天见",
|
||||||
|
"Open Settings": "打开设置",
|
||||||
|
"orange": "برتقالي",
|
||||||
|
"Order": "Order",
|
||||||
|
"Order Applied": "已应用订单",
|
||||||
|
"Order Cancelled": "订单已取消",
|
||||||
|
"Order Cancelled by Passenger": "乘客取消订单",
|
||||||
|
"Order Details Speed": "订单详情 速度",
|
||||||
|
"Order History": "订单历史",
|
||||||
|
"Order Request Page": "订单请求页面",
|
||||||
|
"OrderId": "订单号",
|
||||||
|
"Origin": "起源",
|
||||||
|
"Other": "其他",
|
||||||
|
"Owner": "Owner",
|
||||||
|
"Owner Name": "业主姓名",
|
||||||
|
"Passenger Cancel Trip": "乘客取消行程",
|
||||||
|
"Passenger cancel trip": "乘客取消行程",
|
||||||
|
"Passenger come to you": "乘客来找你",
|
||||||
|
"passenger details by phone": "تفاصيل الراكب حسب رقم الهاتف",
|
||||||
|
"Passenger name :": "乘客姓名:",
|
||||||
|
"Passenger Name is": "乘客姓名是",
|
||||||
|
"Passenger not found": "Passenger not found",
|
||||||
|
"Passenger Not Found": "Passenger Not Found",
|
||||||
|
"Passengers Cant Register": "الركاب لا يستطيعون التسجيل",
|
||||||
|
"Passengers Rated": "تقييمات الركاب",
|
||||||
|
"Password must br at least 6 character.": "密码必须至少包含 6 个字符。",
|
||||||
|
"Pay from my budget": "从我的预算中支付",
|
||||||
|
"Pay with Credit Card": "使用信用卡支付",
|
||||||
|
"Pay with Wallet": "使用钱包支付",
|
||||||
|
"Pay with Your": "用您的支付",
|
||||||
|
"Pay with Your PayPal": "使用 PayPal 付款",
|
||||||
|
"Payment Failed": "支付失败",
|
||||||
|
"Payment History": "支付历史",
|
||||||
|
"Payment Method": "付款方式",
|
||||||
|
"Payment Successful": "支付成功",
|
||||||
|
"Pending": "Pending",
|
||||||
|
"Perfect for adventure seekers who want to experience something new and exciting": "非常适合想要体验新鲜刺激的冒险爱好者",
|
||||||
|
"Personal Information": "معلومات شخصية",
|
||||||
|
"Phone": "رقم الهاتف",
|
||||||
|
"Phone Number": "رقم الهاتف",
|
||||||
|
"Phone Number is": "电话号码是",
|
||||||
|
"Pick from map": "从地图上选择",
|
||||||
|
"Pick your destination from Map": "从地图中选择您的目的地",
|
||||||
|
"Pick your ride location on the map - Tap to confirm": "在地图上选择您的乘车地点 - 点击确认",
|
||||||
|
"pink": "وردي",
|
||||||
|
"Plate Number": "车牌号码",
|
||||||
|
"Please enter": "请输入",
|
||||||
|
"Please enter a phone number": "请输入电话号码",
|
||||||
|
"Please enter a valid 16-digit card number": "请输入有效的 16 位卡号",
|
||||||
|
"Please enter a valid email.": "Please enter a valid email.",
|
||||||
|
"Please enter a valid phone number.": "Please enter a valid phone number.",
|
||||||
|
"Please enter a value": "Please enter a value",
|
||||||
|
"Please enter the cardholder name": "请输入持卡人姓名",
|
||||||
|
"Please enter the CVV code": "请输入CVV码",
|
||||||
|
"Please enter the expiry date": "请输入有效期",
|
||||||
|
"Please enter your City.": "请输入您的城市。",
|
||||||
|
"Please enter Your Email.": "请输入您的电子邮件。",
|
||||||
|
"Please enter your feedback.": "请输入您的反馈。",
|
||||||
|
"Please enter your first name.": "请输入您的名字。",
|
||||||
|
"Please enter your last name.": "请输入您的姓氏。",
|
||||||
|
"Please enter Your Password.": "请输入您的密码。",
|
||||||
|
"Please enter your phone number.": "请输入您的电话号码。",
|
||||||
|
"Please enter your Question.": "请输入您的问题。",
|
||||||
|
"Please go to Car Driver": "请前往汽车司机",
|
||||||
|
"Please go to Car now": "请立即前往汽车",
|
||||||
|
"please go to picker location exactly": "请准确前往选取器位置",
|
||||||
|
"Please help! Contact me as soon as possible.": "请帮忙!尽快联系我。",
|
||||||
|
"Please put your licence in these border": "请将您的驾照放在这些边框内",
|
||||||
|
"Please stay on the picked point.": "请留在选定的点上。",
|
||||||
|
"Please Try anther time": "请稍后尝试",
|
||||||
|
"Please wait for the passenger to enter the car before starting the trip.": "请等待乘客上车后再开始行程。",
|
||||||
|
"Please Wait If passenger want To Cancel!": "如果旅客想取消,请稍候!",
|
||||||
|
"please wait till driver accept your order": "请等待司机接受您的订单",
|
||||||
|
"Point": "观点",
|
||||||
|
"Price": "السعر",
|
||||||
|
"price is": "价格是",
|
||||||
|
"Privacy Notice": "隐私声明",
|
||||||
|
"Profile": "轮廓",
|
||||||
|
"Promo Code": "促销代码",
|
||||||
|
"Promo End !": "促销结束!",
|
||||||
|
"Promos": "促销",
|
||||||
|
"Promos For today": "今天的促销",
|
||||||
|
"purple": "أرجواني",
|
||||||
|
"Pyament Cancelled .": "皮亚门特已取消。",
|
||||||
|
"Qatar": "卡塔尔",
|
||||||
|
"Quick Communication": "Quick Communication",
|
||||||
|
"Quick Search...": "Quick Search...",
|
||||||
|
"Rate Captain": "评分队长",
|
||||||
|
"Rate Driver": "费率驱动因素",
|
||||||
|
"Rate Passenger": "票价乘客",
|
||||||
|
"Rating is": "评级为",
|
||||||
|
"raw gray": "رمادي ",
|
||||||
|
"Recharge my Account": "为我的帐户充值",
|
||||||
|
"Record saved": "记录已保存",
|
||||||
|
"red": "أحمر",
|
||||||
|
"Refuse Order": "拒绝订单",
|
||||||
|
"Register": "登记",
|
||||||
|
"Register as Driver": "注册成为司机",
|
||||||
|
"Register Captin": "注册队长",
|
||||||
|
"Register Driver": "注册驱动程序",
|
||||||
|
"Register new driver": "تسجيل سائق جديد",
|
||||||
|
"Registration Date": "تاريخ التسجيل",
|
||||||
|
"reject your order.": "拒绝您的订单。",
|
||||||
|
"Religion": "宗教",
|
||||||
|
"Ride ID": "معرف الرحلة",
|
||||||
|
"Ride Summaries": "骑行总结",
|
||||||
|
"Ride Summary": "骑行总结",
|
||||||
|
"Ride Today :": "今天骑行:",
|
||||||
|
"Ride Wallet": "骑行钱包",
|
||||||
|
"Rouats of Trip": "旅行路线",
|
||||||
|
"safe_and_comfortable": "安全舒适",
|
||||||
|
"Saudi Arabia": "沙特阿拉伯",
|
||||||
|
"Save and Activate": "Save and Activate",
|
||||||
|
"Save Changes": "حفظ التغييرات",
|
||||||
|
"Save Credit Card": "保存信用卡",
|
||||||
|
"Save Notes": "حفظ الملاحظات",
|
||||||
|
"Saved Sucssefully": "保存成功",
|
||||||
|
"Scam Reports": "تقارير الاحتيال",
|
||||||
|
"scan Car License.": "扫描汽车驾照。",
|
||||||
|
"Scan Driver License": "扫描驾驶执照",
|
||||||
|
"Scan Id": "扫描 ID",
|
||||||
|
"Scan ID MklGoogle": "扫描 ID MklGoogle",
|
||||||
|
"Search by phone number": "Search by phone number",
|
||||||
|
"Search Details": "Search Details",
|
||||||
|
"Search for waypoint": "搜索航点",
|
||||||
|
"Search for your destination": "搜索您的目的地",
|
||||||
|
"Search for your Start point": "搜索您的起点",
|
||||||
|
"See you Tomorrow!": "明天见!",
|
||||||
|
"Sefer is committed to safety, and all of our captains are carefully screened and background checked.": "Sefer 致力于安全,我们所有的船长都经过仔细的筛选和背景调查。",
|
||||||
|
"Sefer is the ride-hailing app that is safe, reliable, and accessible.": "Sefer 是一款安全、可靠且易于使用的叫车应用程序。",
|
||||||
|
"Sefer offers a variety of vehicle options to suit your needs, including economy, comfort, and luxury. Choose the option that best fits your budget and passenger count.": "Sefer 提供多种车辆选择以满足您的需求,包括经济型、舒适型和豪华型。选择最适合您的预算和乘客数量的选项。",
|
||||||
|
"Sefer offers multiple payment methods for your convenience. Choose between cash payment or credit/debit card payment during ride confirmation.": "Sefer 提供多种付款方式,方便您使用。在行程确认时选择现金付款或信用卡/借记卡付款。",
|
||||||
|
"Sefer prioritizes your safety. We offer features like driver verification, in-app trip tracking, and emergency contact options.": "Sefer 将您的安全放在首位。我们提供驾驶员验证、应用内行程跟踪和紧急联系选项等功能。",
|
||||||
|
"Sefer provides in-app chat functionality to allow you to communicate with your driver or passenger during your ride.": "Sefer 提供应用内聊天功能,让您在乘车期间与司机或乘客进行交流。",
|
||||||
|
"Sefer Service": "خدمة سفر",
|
||||||
|
"Select Country": "选择国家",
|
||||||
|
"Select Date": "选择日期",
|
||||||
|
"Select one message": "选择一条消息",
|
||||||
|
"Select recorded trip": "选择记录的行程",
|
||||||
|
"Select Your Country": "选择您的国家/地区",
|
||||||
|
"Select your destination": "选择您的目的地",
|
||||||
|
"Selected file:": "选定的文件:",
|
||||||
|
"send": "send",
|
||||||
|
"Send Verfication Code": "发送验证码",
|
||||||
|
"Send Verification Code": "发送验证码",
|
||||||
|
"Server Error": "Server Error",
|
||||||
|
"Service Agent": "Service Agent",
|
||||||
|
"Settings": "设置",
|
||||||
|
"Sex is": "性别是",
|
||||||
|
"Share Trip Details": "分享行程详情",
|
||||||
|
"Show latest promo": "显示最新促销",
|
||||||
|
"Show Promos": "显示促销",
|
||||||
|
"Show Promos to Charge": "显示促销活动以收费",
|
||||||
|
"Sign In by Apple": "通过 Apple 登录",
|
||||||
|
"Sign In by Google": "通过谷歌登录",
|
||||||
|
"Sign in with Google for easier email and name entry": "使用 Google 登录以更轻松地输入电子邮件和姓名",
|
||||||
|
"Sign Out": "登出",
|
||||||
|
"silver": "فضي",
|
||||||
|
"Siro Service": "Siro Service",
|
||||||
|
"Sky Blue": "أزرق سماوي",
|
||||||
|
"So go and gain your money": "所以去赚你的钱吧",
|
||||||
|
"SOS Phone": "求救电话",
|
||||||
|
"Speed Over": "超速",
|
||||||
|
"Start Record": "开始记录",
|
||||||
|
"Start the Ride": "开始骑行",
|
||||||
|
"Start Time": "وقت البدء",
|
||||||
|
"Statistics": "统计数据",
|
||||||
|
"Status": "حالة",
|
||||||
|
"Step-by-step instructions on how to request a ride through the Sefer app.": "有关如何通过 Sefer 应用叫车的分步说明。",
|
||||||
|
"Submit": "提交",
|
||||||
|
"Submit Question": "提交问题",
|
||||||
|
"Submit rating": "提交评分",
|
||||||
|
"Success": "成功",
|
||||||
|
"Switch Rider": "开关骑手",
|
||||||
|
"Syrian Documents Check": "Syrian Documents Check",
|
||||||
|
"Take Image": "拍摄图像",
|
||||||
|
"Take Picture Of Driver License Card": "拍摄驾驶执照卡的照片",
|
||||||
|
"Take Picture Of ID Card": "拍摄身份证照片",
|
||||||
|
"Target": "目标",
|
||||||
|
"Tariff": "关税",
|
||||||
|
"Tariffs": "关税",
|
||||||
|
"Tax Expiry Date": "纳税到期日",
|
||||||
|
"teal": "تركوازي",
|
||||||
|
"Thanks": "谢谢",
|
||||||
|
"thanks": "thanks",
|
||||||
|
"the 300 points equal 300 L.E": "300 点等于 300 L.E",
|
||||||
|
"the 300 points equal 300 L.E for you": "300 点等于 300 L.E",
|
||||||
|
"the 500 points equal 30 JOD": "500 点等于 30 JOD",
|
||||||
|
"the 500 points equal 30 JOD for you": "500 积分等于 30 JOD 给您",
|
||||||
|
"The distance less than 500 meter.": "距离小于500米。",
|
||||||
|
"The driver accept your order for": "司机接受您的订单",
|
||||||
|
"The driver on your way": "司机正在路上",
|
||||||
|
"The driver waitting you in picked location .": "司机在指定地点等候您。",
|
||||||
|
"The Driver Will be in your location soon .": "司机很快就会到达您所在的位置。",
|
||||||
|
"The email or phone number is already registered.": "该电子邮件或电话号码已被注册。",
|
||||||
|
"The full name on your criminal record does not match the one on your driver’s license. Please verify and provide the correct documents.": "您犯罪记录上的全名与您驾驶执照上的全名不符。请核实并提供正确的文件。",
|
||||||
|
"The national number on your driver’s license does not match the one on your ID document. Please verify and provide the correct documents.": "您的驾驶执照上的国家号码与您的身份证件上的号码不匹配。请核实并提供正确的文件。",
|
||||||
|
"The payment was approved.": "付款已获批准。",
|
||||||
|
"The payment was not approved. Please try again.": "付款未获批准。请再试一次。",
|
||||||
|
"There is no data yet.": "还没有数据。",
|
||||||
|
"There is no help Question here": "这里没有帮助问题",
|
||||||
|
"There is no notification yet": "目前还没有通知",
|
||||||
|
"There no Driver Aplly your order sorry for that": "没有司机申请您的订单,对此深表歉意",
|
||||||
|
"This amount for all trip I get from Passengers": "我从乘客那里得到的所有行程的金额",
|
||||||
|
"This amount for all trip I get from Passengers and Collected For me in": "这笔金额是我从乘客处获得并为我收取的所有行程的金额",
|
||||||
|
"This is for delivery or a motorcycle.": "这是用于送货或摩托车。",
|
||||||
|
"This price may be changed": "此价格可能会更改",
|
||||||
|
"This ride type allows changes, but the price may increase": "此行程类型允许更改,但价格可能会上涨",
|
||||||
|
"This ride type does not allow changes to the destination or additional stops": "此行程类型不允许更改目的地或增加停靠站",
|
||||||
|
"This trip goes directly from your starting point to your destination for a fixed price. The driver must follow the planned route": "此行程以固定价格直接从您的出发地前往目的地。司机必须按照计划的路线行驶",
|
||||||
|
"this will delete all files from your device": "这将从您的设备中删除所有文件",
|
||||||
|
"Time to arrive": "到达时间",
|
||||||
|
"Tip is": "提示是",
|
||||||
|
"tips": "尖端",
|
||||||
|
"To :": "到 :",
|
||||||
|
"to arrive you.": "到达你身边。",
|
||||||
|
"To become a ride-sharing driver on the Sefer app, you need to upload your driver\\\"s license, ID document, and car registration document. Our AI system will instantly review and verify their authenticity in just 2-3 minutes. If your documents are approved, you can start working as a driver on the Sefer app. Please note, submitting fraudulent documents is a serious offense and may result in immediate termination and legal consequences.": "要成为Sefer应用程序上的拼车司机,您需要上传驾驶执照、身份证件和汽车登记文件。我们的人工智能系统将在短短2-3分钟内立即审核并验证它们的真实性。如果您的文件获得批准后,您可以开始在 Sefer 应用程序上担任司机。请注意,提交欺诈性文件属于严重犯罪行为,可能会导致立即终止合同并承担法律后果。",
|
||||||
|
"To change Language the App": "更改应用程序语言",
|
||||||
|
"To change some Settings": "更改某些设置",
|
||||||
|
"To ensure you receive the most accurate information for your location, please select your country below. This will help tailor the app experience and content to your country.": "为确保您收到最准确的所在位置信息,请在下面选择您所在的国家/地区。这将有助于根据您所在的国家/地区定制应用程序体验和内容。",
|
||||||
|
"To Home": "回家",
|
||||||
|
"to ride with": "一起骑",
|
||||||
|
"To Work": "上班",
|
||||||
|
"token updated": "令牌已更新",
|
||||||
|
"Total Amount:": "总金额:",
|
||||||
|
"Total Budget from trips by": "行程总预算",
|
||||||
|
"Total Budget from trips is": "旅行总预算为",
|
||||||
|
"Total Connection Duration:": "总连接持续时间:",
|
||||||
|
"Total Cost": "总成本",
|
||||||
|
"Total Cost is": "总成本为",
|
||||||
|
"Total Duration:": "总持续时间:",
|
||||||
|
"Total For You is": "为您提供的总计是",
|
||||||
|
"Total From Passenger is": "来自乘客的总计是",
|
||||||
|
"Total Hours on month": "当月总小时数",
|
||||||
|
"Total is": "总计为",
|
||||||
|
"Total Payments": "إجمالي المدفوعات",
|
||||||
|
"Total points is": "总分是",
|
||||||
|
"Total Points is": "总积分为",
|
||||||
|
"Total price from": "总价从",
|
||||||
|
"Total Rides": "إجمالي الرحلات",
|
||||||
|
"Trip Cancelled": "行程取消",
|
||||||
|
"Trip has Steps": "旅行有台阶",
|
||||||
|
"Trip is Begin": "旅行开始了",
|
||||||
|
"Trips recorded": "记录的行程",
|
||||||
|
"Turkey": "火鸡",
|
||||||
|
"type here": "在此输入",
|
||||||
|
"Type here Place": "在此输入地点",
|
||||||
|
"Type something...": "输入一些东西...",
|
||||||
|
"Type your Email": "输入您的电子邮件",
|
||||||
|
"Update": "更新",
|
||||||
|
"Update Education": "更新教育",
|
||||||
|
"Update Gender": "更新性别",
|
||||||
|
"USA": "美国",
|
||||||
|
"Use Touch ID or Face ID to confirm payment": "使用 Touch ID 或 Face ID 确认付款",
|
||||||
|
"User does not exist.": "用户不存在。",
|
||||||
|
"Vehicle Details Back": "车辆详情 返回",
|
||||||
|
"Vehicle Details Front": "车辆详细信息 正面",
|
||||||
|
"Vehicle Information": "معلومات المركبة",
|
||||||
|
"Verify Email": "验证邮件",
|
||||||
|
"Verify Email For Driver": "验证司机的电子邮件",
|
||||||
|
"View complaint": "عرض الشكوى",
|
||||||
|
"VIN": "车架号",
|
||||||
|
"VIN :": "车辆识别号码:",
|
||||||
|
"VIN is": "车辆识别号是",
|
||||||
|
"violet": "بنفسجي",
|
||||||
|
"Visit our website or contact Sefer support for information on driver registration and requirements.": "请访问我们的网站或联系 Sefer 支持人员,了解有关驱动程序注册和要求的信息。",
|
||||||
|
"Waiting for Captin ...": "等待队长...",
|
||||||
|
"Waiting for Driver ...": "等待司机...",
|
||||||
|
"Waiting for your location": "等待你的位置",
|
||||||
|
"Wallet": "钱包",
|
||||||
|
"Wallet Balance": "رصيد المحفظة",
|
||||||
|
"wallet due to a previous trip.": "由于之前的旅行,钱包被掏空了。",
|
||||||
|
"Wallet Information": "معلومات المحفظة",
|
||||||
|
"Wallet!": "钱包!",
|
||||||
|
"Warning": "Warning",
|
||||||
|
"Warning: Speeding detected!": "警告:检测到超速!",
|
||||||
|
"We are process picture please wait": "我们正在处理图片请稍候",
|
||||||
|
"We Are Sorry That we dont have cars in your Location!": "很抱歉,您所在的位置没有汽车!",
|
||||||
|
"We need your phone number to contact you and to help you receive orders.": "我们需要您的电话号码来与您联系并帮助您接收订单。",
|
||||||
|
"We need your phone number to contact you and to help you.": "我们需要您的电话号码来与您联系并为您提供帮助。",
|
||||||
|
"We noticed the speed is exceeding 100 km/h. Please slow down for your safety. If you feel unsafe, you can share your trip details with a contact or call the police using the red SOS button.": "我们注意到速度超过了 100 公里/小时。为了您的安全,请减速慢行。如果您感觉不安全,可以与联系人分享您的行程详细信息或使用红色 SOS 按钮报警。",
|
||||||
|
"We regret to inform you that another driver has accepted this order.": "我们很遗憾地通知您,另一位司机已接受此订单。",
|
||||||
|
"We search nearst Driver to you": "我们搜索离您最近的司机",
|
||||||
|
"We sent 5 digit to your Email provided": "我们向您提供的电子邮件发送了 5 位数字",
|
||||||
|
"Welcome back,": "Welcome back,",
|
||||||
|
"Welcome call": "Welcome call",
|
||||||
|
"Welcome Drivers": "أهلاً بالسواق",
|
||||||
|
"Welcome to Sefer!": "欢迎来到塞弗!",
|
||||||
|
"welcome_message": "欢迎消息",
|
||||||
|
"What are the requirements to become a driver?": "成为一名司机需要什么条件?",
|
||||||
|
"What safety measures does Sefer offer?": "Sefer 提供哪些安全措施?",
|
||||||
|
"What types of vehicles are available?": "有哪些类型的车辆可供选择?",
|
||||||
|
"WhatsApp: Activation": "WhatsApp: Activation",
|
||||||
|
"WhatsApp: Missing Docs": "WhatsApp: Missing Docs",
|
||||||
|
"WhatsApp: Support": "WhatsApp: Support",
|
||||||
|
"Where to": "去哪儿",
|
||||||
|
"Where you want go": "你想去的地方",
|
||||||
|
"white": "أبيض",
|
||||||
|
"with license plate": "有车牌的",
|
||||||
|
"With Sefer, you can get a ride to your destination in minutes.": "通过 Sefer,您可以在几分钟内乘车到达目的地。",
|
||||||
|
"Work Saved": "工作已保存",
|
||||||
|
"write Color for your car": "为你的车写颜色",
|
||||||
|
"write Expiration Date for your car": "写下您的汽车的到期日期",
|
||||||
|
"write Make for your car": "为你的汽车写下“Make for your car”",
|
||||||
|
"write Model for your car": "为您的汽车编写型号",
|
||||||
|
"Write note": "写笔记",
|
||||||
|
"write vin for your car": "为您的汽车写入 vin",
|
||||||
|
"write Year for your car": "写下你的车的年份",
|
||||||
|
"Year": "年",
|
||||||
|
"year :": "年 :",
|
||||||
|
"Year is": "年份是",
|
||||||
|
"yellow": "أصفر",
|
||||||
|
"Yes": "是的",
|
||||||
|
"Yes, you can cancel your ride under certain conditions (e.g., before driver is assigned). See the Sefer cancellation policy for details.": "是的,您可以在某些情况下取消行程(例如,在分配司机之前)。详情请参阅 Sefer 取消政策。",
|
||||||
|
"You are Delete": "你正在删除",
|
||||||
|
"You are not in near to passenger location": "您不在乘客位置附近",
|
||||||
|
"You are Stopped": "你被阻止了",
|
||||||
|
"You Are Stopped For this Day !": "今天你就被阻止了!",
|
||||||
|
"You can buy points from your budget": "您可以从预算中购买积分",
|
||||||
|
"You can buy Points to let you online": "您可以购买积分让您上网",
|
||||||
|
"You Can cancel Ride After Captain did not come in the time": "队长未按时到达后您可以取消乘车",
|
||||||
|
"You can cancel Ride now": "您现在可以取消行程",
|
||||||
|
"You can cancel trip": "您可以取消行程",
|
||||||
|
"You Can Cancel Trip And get Cost of Trip From": "您可以取消行程并获取行程费用:",
|
||||||
|
"You can change the Country to get all features": "您可以更改国家/地区以获得所有功能",
|
||||||
|
"You can change the language of the app": "您可以更改应用程序的语言",
|
||||||
|
"You can decline a request without any cost": "您可以拒绝请求,无需支付任何费用",
|
||||||
|
"You can\\\"t cancel!": "您无法取消!",
|
||||||
|
"You can\\\"t continue with us .": "你不能继续和我们在一起。",
|
||||||
|
"You dont Add Emergency Phone Yet!": "您还没有添加紧急电话!",
|
||||||
|
"You Dont Have Any amount in": "您没有任何金额",
|
||||||
|
"You Dont Have Any places yet !": "您还没有任何位置!",
|
||||||
|
"You dont have Points": "您没有积分",
|
||||||
|
"You Earn today is": "您今天的收入是",
|
||||||
|
"you gain": "你获得",
|
||||||
|
"You Have": "你有",
|
||||||
|
"You have": "你有",
|
||||||
|
"you have a negative balance of": "您的余额为负数",
|
||||||
|
"You have finished all times": "你已经完成了所有时间",
|
||||||
|
"You Have in": "你已经在",
|
||||||
|
"You have in account": "您账户中有",
|
||||||
|
"You have promo!": "你有促销!",
|
||||||
|
"You Have Tips": "你有秘诀",
|
||||||
|
"You must be charge your Account": "您必须向您的帐户收费",
|
||||||
|
"You must Verify email !.": "您必须验证电子邮件!",
|
||||||
|
"You Refused 3 Rides this Day that is the reason": "您今天拒绝了 3 次乘车,这就是原因",
|
||||||
|
"You Should be select reason.": "你应该选择理由。",
|
||||||
|
"You Should choose rate figure": "您应该选择费率数字",
|
||||||
|
"You should renew Driver license": "您应该更新驾驶执照",
|
||||||
|
"You should select one": "你应该选择一个",
|
||||||
|
"You trip distance is": "您的行程距离是",
|
||||||
|
"You will arrive to your destination after": "您将在之后到达目的地",
|
||||||
|
"You will arrive to your destination after timer end.": "计时器结束后您将到达目的地。",
|
||||||
|
"You will be pay the cost to driver or we will get it from you on next trip": "您将向司机支付费用,或者我们将在下次行程时向您收取费用",
|
||||||
|
"You will be thier in": "你将会在",
|
||||||
|
"You will choose allow all the time to be ready receive orders": "您将选择允许所有时间准备好接收订单",
|
||||||
|
"You will choose one of above !": "您将选择以上之一!",
|
||||||
|
"You will get cost of your work for this trip": "您将获得本次旅行的工作费用",
|
||||||
|
"you will pay to Driver": "您将支付给司机",
|
||||||
|
"you will pay to Driver you will be pay the cost of driver time look to your SEFER Wallet": "您将向司机付款 您将支付司机时间费用 请查看您的 SEFER 钱包",
|
||||||
|
"You will recieve code in sms message": "您将在短信中收到代码",
|
||||||
|
"Your Account is Deleted": "您的帐户已删除",
|
||||||
|
"Your are far from passenger location": "您距离乘客位置较远",
|
||||||
|
"Your Budget less than needed": "您的预算低于所需",
|
||||||
|
"Your data will be erased after 2 weeks": "您的数据将在 2 周后被删除",
|
||||||
|
"Your driver’s license and/or car tax has expired. Please renew them before proceeding.": "لقد انتهت صلاحية رخصة القيادة و/أو ضريبة السيارة الخاصة بك. يرجى تجديدها قبل المتابعة.",
|
||||||
|
"Your driver’s license has expired. Please renew it before proceeding.": "لقد انتهت صلاحية رخصة القيادة الخاصة بك. يرجى تجديدها قبل المتابعة.",
|
||||||
|
"Your fee is": "您的费用是",
|
||||||
|
"Your name": "你的名字",
|
||||||
|
"Your password": "你的密码",
|
||||||
|
"Your Ride Duration is": "您的骑行时间是",
|
||||||
|
"your ride is applied": "您的行程已被应用",
|
||||||
|
"Your trip cost is": "您的旅行费用是",
|
||||||
|
"Your trip distance is": "您的行程距离是",
|
||||||
|
"Your Wallet balance is": "您的钱包余额是",
|
||||||
|
"YYYY-MM-DD": "YYYY-MM-DD",
|
||||||
|
"أدخل الرمز هنا": "أدخل الرمز هنا",
|
||||||
|
"إنشاء حساب موظف": "إنشاء حساب موظف",
|
||||||
|
"الْمَجْمُوع هُوَ": "🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟",
|
||||||
|
"بطاقة الائتمان هي": "巴巴巴",
|
||||||
|
"تحقق": "تحقق",
|
||||||
|
"تم إرسال رمز التحقق إلى رقمك (\$phone)": "تم إرسال رمز التحقق إلى رقمك (\$phone)",
|
||||||
|
"تم إرسال رمز التحقق إلى رقمك (\$phoneNumber)": "تم إرسال رمز التحقق إلى رقمك (\$phoneNumber)",
|
||||||
|
"خطأ": "خطأ",
|
||||||
|
"خطأ', 'الرجاء إدخال رمز صحيح": "خطأ', 'الرجاء إدخال رمز صحيح",
|
||||||
|
"رمز التحقق": "رمز التحقق",
|
||||||
|
"فَاسْتَحِقَّ فُلُوسَك وَاكْسِب النِّقَاط": "❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️",
|
||||||
|
"لا تستطيع الغاء الرحله": "??????????????????????????????????????????????????????????????????????????????",
|
||||||
|
"لديك حساب بالفعل؟ ": "لديك حساب بالفعل؟ ",
|
||||||
|
"لَدَيْك": "😄😄😄😄😄",
|
||||||
|
"لِقَائِنَا غَدًا!": "吖吖吖吖!",
|
||||||
|
"مع الراكب": "请注意",
|
||||||
|
"من خلال القائمة أدناه": "🇨🇳 🇨🇳",
|
||||||
|
"موافق": "موافق",
|
||||||
|
"نجاح": "نجاح",
|
||||||
|
"وَلَن تَسْتَطِيع اسْتِخْدَام التَّطْبِيق مَرَّة أُخْرَى بَعْد شَهْر": "驶",
|
||||||
|
"يُلْغِي الرَّاكِب الرِّحْلَة": "🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟",
|
||||||
|
"ُExpire Date": "到期日期",
|
||||||
|
"⏳ Approval Queue": "⏳ Approval Queue",
|
||||||
|
"⚡ Quick Actions": "⚡ Quick Actions",
|
||||||
|
"📊 Reporting & Quality": "📊 Reporting & Quality",
|
||||||
|
"🔍 Search & Inquiries": "🔍 Search & Inquiries",
|
||||||
|
"🚗 Vehicle Management": "🚗 Vehicle Management",
|
||||||
|
};
|
||||||
File diff suppressed because it is too large
Load Diff
874
siro_service_translations_data.json
Normal file
874
siro_service_translations_data.json
Normal file
@@ -0,0 +1,874 @@
|
|||||||
|
{
|
||||||
|
"existing_syrian": {
|
||||||
|
"red": "أحمر",
|
||||||
|
"green": "أخضر",
|
||||||
|
"blue": "أزرق",
|
||||||
|
"black": "أسود",
|
||||||
|
"white": "أبيض",
|
||||||
|
"yellow": "أصفر",
|
||||||
|
"purple": "أرجواني",
|
||||||
|
"orange": "برتقالي",
|
||||||
|
"pink": "وردي",
|
||||||
|
"brown": "بني",
|
||||||
|
"Insert site of Owner": "أدخل موقع المالك",
|
||||||
|
"Insert site of Driver": "أدخل موقع السائق",
|
||||||
|
"Insert registration_date of Car": "أدخل تاريخ تسجيل السيارة",
|
||||||
|
"Insert phone of Owner": "أدخل هاتف المالك",
|
||||||
|
"Insert Name of Owner": "أدخل اسم المالك",
|
||||||
|
"Insert year of Car": "أدخل سنة السيارة",
|
||||||
|
"Insert registration_date of Driver": "",
|
||||||
|
"Insert car_type of Driver": "أدخل نوع السيارة للسائق",
|
||||||
|
"Insert car_model of Driver": "أدخل طراز السيارة للسائق",
|
||||||
|
"Insert car_number of Driver": "أدخل رقم سيارة السائق",
|
||||||
|
"Add Car Who Wants to Work": "أضف السيارة التي ترغب في العمل",
|
||||||
|
"Add Driver Who Wants to Work": "إضافة سائق يرغب في العمل",
|
||||||
|
"Insert Name of Driver": "أدخل اسم السائق",
|
||||||
|
"Insert national ID of Driver": "أدخل الرقم الوطني للسائق",
|
||||||
|
"Insert phone of Driver": "أدخل رقم هاتف السائق",
|
||||||
|
"Insert license type of Driver": "أدخل نوع رخصة السائق",
|
||||||
|
"Insert birth_date of Driver": "أدخل تاريخ ميلاد السائق",
|
||||||
|
"gray": "رمادي",
|
||||||
|
"cyan": "سماوي",
|
||||||
|
"magenta": "بنفسجي",
|
||||||
|
"lime": "ليموني",
|
||||||
|
"indigo": "نيلي",
|
||||||
|
"violet": "بنفسجي",
|
||||||
|
"raw gray": "رمادي ",
|
||||||
|
"gold": "ذهبي",
|
||||||
|
"silver": "فضي",
|
||||||
|
"teal": "تركوازي",
|
||||||
|
"navy": "كحلي",
|
||||||
|
"Eggplant": "باذنجان",
|
||||||
|
"Dark Red": "نبيتي",
|
||||||
|
"Sky Blue": "أزرق سماوي",
|
||||||
|
"Mocha": "موكا",
|
||||||
|
"Drivers Activity": "نشاط السائقين",
|
||||||
|
"Drivers phones not register": "هواتف السائقين غير مسجلة",
|
||||||
|
"Register new driver": "تسجيل سائق جديد",
|
||||||
|
"Champagne": "شامبان",
|
||||||
|
"Drivers waitting Register": "السائقون في انتظار التسجيل",
|
||||||
|
"Bronze": "برونزي",
|
||||||
|
"Maroon": "ماروني",
|
||||||
|
"Drivers Want Register": "السائقون يريدون التسجيل",
|
||||||
|
"Capture an Image of Your Criminal Record": "拍摄您的犯罪记录图像",
|
||||||
|
"IssueDate": "签发日期",
|
||||||
|
"Capture an Image of Your ID Document Back": "拍摄您的身份证件图像",
|
||||||
|
"Capture an Image of Your car license front": "拍摄您的汽车牌照正面的图像",
|
||||||
|
"Capture an Image of Your ID Document front": "拍摄您的身份证件正面的图像",
|
||||||
|
"Capture an Image of Your car license back": "拍回您的汽车驾照图像",
|
||||||
|
"Capture an Image of Your Driver’s License": "拍摄您的驾驶执照的图像",
|
||||||
|
"Capture an Image of Your Driver License": "拍摄您的驾驶执照的图像",
|
||||||
|
"Not found any image": "لم يتم العثور على أي صورة",
|
||||||
|
"Documents check": "文件检查",
|
||||||
|
"ID Documents Front": "身份证件正面",
|
||||||
|
"Vehicle Details Front": "车辆详细信息 正面",
|
||||||
|
"Vehicle Details Back": "车辆详情 返回",
|
||||||
|
"Criminal Record": "犯罪记录",
|
||||||
|
"ID Documents Back": "身份证件 返回",
|
||||||
|
"Driver's License": "驾照",
|
||||||
|
"Your driver’s license and/or car tax has expired. Please renew them before proceeding.": "لقد انتهت صلاحية رخصة القيادة و/أو ضريبة السيارة الخاصة بك. يرجى تجديدها قبل المتابعة.",
|
||||||
|
"Your driver’s license has expired. Please renew it before proceeding.": "لقد انتهت صلاحية رخصة القيادة الخاصة بك. يرجى تجديدها قبل المتابعة.",
|
||||||
|
"The national number on your driver’s license does not match the one on your ID document. Please verify and provide the correct documents.": "您的驾驶执照上的国家号码与您的身份证件上的号码不匹配。请核实并提供正确的文件。",
|
||||||
|
"Welcome Drivers": "أهلاً بالسواق",
|
||||||
|
"License Categories": "许可证类别",
|
||||||
|
"Notes:": "ملاحظات:",
|
||||||
|
"Enter notes here...": "أدخل الملاحظات هنا...",
|
||||||
|
"Call Driver": "اتصل بالسائق",
|
||||||
|
"Success": "成功",
|
||||||
|
"Changes saved successfully": "تم حفظ التغييرات بنجاح",
|
||||||
|
"Save Changes": "حفظ التغييرات",
|
||||||
|
"Passengers Cant Register": "الركاب لا يستطيعون التسجيل",
|
||||||
|
"Enter notes after call": "أدخل الملاحظات بعد المكالمة",
|
||||||
|
"Notes": "ملاحظات",
|
||||||
|
"Save Notes": "حفظ الملاحظات",
|
||||||
|
"Created At": "أنشئ في",
|
||||||
|
"Phone Number": "رقم الهاتف",
|
||||||
|
"Drivers Cant Register": "السائقون لا يستطيعون التسجيل",
|
||||||
|
"Plate Number": "车牌号码",
|
||||||
|
"Make": "制作",
|
||||||
|
"Model": "模型",
|
||||||
|
"Year": "年",
|
||||||
|
"Color": "颜色",
|
||||||
|
"Fuel Type": "نوع الوقود",
|
||||||
|
"Displacement": "移位",
|
||||||
|
"Registration Date": "تاريخ التسجيل",
|
||||||
|
"Expiration Date": "截止日期",
|
||||||
|
"License Information": "معلومات الرخصة",
|
||||||
|
"License Type": "许可证类型",
|
||||||
|
"Card ID": "رقم بطاقة الهوية",
|
||||||
|
"Issue Date": "签发日期",
|
||||||
|
"Expiry Date": "到期日",
|
||||||
|
"Categories": "التصنيفات",
|
||||||
|
"Bank Information": "معلومات البنك",
|
||||||
|
"Account Number": "رقم الحساب",
|
||||||
|
"Bank Code": "رمز البنك",
|
||||||
|
"Driver Statistics": "إحصاءات السائق",
|
||||||
|
"Name (English)": "姓名(英文)",
|
||||||
|
"Name": "姓名",
|
||||||
|
"Phone": "رقم الهاتف",
|
||||||
|
"Gender": "性别",
|
||||||
|
"Birthdate": "تاريخ الميلاد",
|
||||||
|
"National Number": "国家号码",
|
||||||
|
"Religion": "宗教",
|
||||||
|
"Multiplier": "مضاعف",
|
||||||
|
"Occupation": "职业",
|
||||||
|
"Education": "教育",
|
||||||
|
"Total Rides": "إجمالي الرحلات",
|
||||||
|
"Average Rating": "التقييم المتوسط",
|
||||||
|
"Total Payments": "إجمالي المدفوعات",
|
||||||
|
"Wallet Balance": "رصيد المحفظة",
|
||||||
|
"Complaints": "الشكاوى",
|
||||||
|
"Scam Reports": "تقارير الاحتيال",
|
||||||
|
"Passengers Rated": "تقييمات الركاب",
|
||||||
|
"Avg Passenger Rating": "متوسط تقييم الركاب",
|
||||||
|
"Vehicle Information": "معلومات المركبة",
|
||||||
|
"VIN": "车架号",
|
||||||
|
"insert Driver phone": "أدخل رقم هاتف السائق",
|
||||||
|
"Driver details by phone": "تفاصيل السائق حسب رقم الهاتف",
|
||||||
|
"insert passenger phone": "أدخل رقم هاتف الراكب",
|
||||||
|
"passenger details by phone": "تفاصيل الراكب حسب رقم الهاتف",
|
||||||
|
"Sefer Service": "خدمة سفر",
|
||||||
|
"Personal Information": "معلومات شخصية",
|
||||||
|
"Email": "البريد الإلكتروني",
|
||||||
|
"Employment": "عمل",
|
||||||
|
"Marital Status": "婚姻状况",
|
||||||
|
"Latest Ride": "أحدث رحلة",
|
||||||
|
"Ride ID": "معرف الرحلة",
|
||||||
|
"Date": "تاريخ",
|
||||||
|
"Start Time": "وقت البدء",
|
||||||
|
"End Time": "وقت الانتهاء",
|
||||||
|
"Price": "السعر",
|
||||||
|
"Status": "حالة",
|
||||||
|
"Driver Information": "معلومات عن السائق",
|
||||||
|
"Payment Method": "付款方式",
|
||||||
|
"Car Type": "نوع السيارة",
|
||||||
|
"Distance": "مسافة",
|
||||||
|
"Additional comments": "تعليقات إضافية.",
|
||||||
|
"Edit car plate": "تعديل لوحة السيارة",
|
||||||
|
"View complaint": "عرض الشكوى",
|
||||||
|
"I don't have a suitable vehicle": "ليس لدي مركبة مناسبة",
|
||||||
|
"I'll register when the app is fully launched": "سأسجل عندما يتم إطلاق التطبيق بالكامل",
|
||||||
|
"I need more help understanding the app": "أحتاج إلى المزيد من المساعدة لفهم التطبيق",
|
||||||
|
"My documents have expired": "وثائقي منتهية الصلاحية",
|
||||||
|
"I'm not ready yet": "لست جاهزًا بعد",
|
||||||
|
"Wallet Information": "معلومات المحفظة",
|
||||||
|
"Last Payment Amount": "مبلغ آخر دفعة",
|
||||||
|
"Last Payment Method": "آخر طريقة دفع",
|
||||||
|
"Sign In by Apple": "通过 Apple 登录",
|
||||||
|
"Sign In by Google": "通过谷歌登录",
|
||||||
|
"How do I request a ride?": "我如何叫车?",
|
||||||
|
"Step-by-step instructions on how to request a ride through the Sefer app.": "有关如何通过 Sefer 应用叫车的分步说明。",
|
||||||
|
"What types of vehicles are available?": "有哪些类型的车辆可供选择?",
|
||||||
|
"Sefer offers a variety of vehicle options to suit your needs, including economy, comfort, and luxury. Choose the option that best fits your budget and passenger count.": "Sefer 提供多种车辆选择以满足您的需求,包括经济型、舒适型和豪华型。选择最适合您的预算和乘客数量的选项。",
|
||||||
|
"How can I pay for my ride?": "我如何支付乘车费用?",
|
||||||
|
"Sefer offers multiple payment methods for your convenience. Choose between cash payment or credit/debit card payment during ride confirmation.": "Sefer 提供多种付款方式,方便您使用。在行程确认时选择现金付款或信用卡/借记卡付款。",
|
||||||
|
"Can I cancel my ride?": "我可以取消行程吗?",
|
||||||
|
"Yes, you can cancel your ride under certain conditions (e.g., before driver is assigned). See the Sefer cancellation policy for details.": "是的,您可以在某些情况下取消行程(例如,在分配司机之前)。详情请参阅 Sefer 取消政策。",
|
||||||
|
"Driver Registration & Requirements": "司机注册和要求",
|
||||||
|
"How can I register as a driver?": "我如何注册成为司机?",
|
||||||
|
"What are the requirements to become a driver?": "成为一名司机需要什么条件?",
|
||||||
|
"Visit our website or contact Sefer support for information on driver registration and requirements.": "请访问我们的网站或联系 Sefer 支持人员,了解有关驱动程序注册和要求的信息。",
|
||||||
|
"How do I communicate with the other party (passenger/driver)?": "如何与对方(乘客/司机)沟通?",
|
||||||
|
"Sefer provides in-app chat functionality to allow you to communicate with your driver or passenger during your ride.": "Sefer 提供应用内聊天功能,让您在乘车期间与司机或乘客进行交流。",
|
||||||
|
"What safety measures does Sefer offer?": "Sefer 提供哪些安全措施?",
|
||||||
|
"Sefer prioritizes your safety. We offer features like driver verification, in-app trip tracking, and emergency contact options.": "Sefer 将您的安全放在首位。我们提供驾驶员验证、应用内行程跟踪和紧急联系选项等功能。",
|
||||||
|
"Frequently Questions": "常见问题",
|
||||||
|
"User does not exist.": "用户不存在。",
|
||||||
|
"We need your phone number to contact you and to help you.": "我们需要您的电话号码来与您联系并为您提供帮助。",
|
||||||
|
"You will recieve code in sms message": "您将在短信中收到代码",
|
||||||
|
"Please enter": "请输入",
|
||||||
|
"We need your phone number to contact you and to help you receive orders.": "我们需要您的电话号码来与您联系并帮助您接收订单。",
|
||||||
|
"The full name on your criminal record does not match the one on your driver’s license. Please verify and provide the correct documents.": "您犯罪记录上的全名与您驾驶执照上的全名不符。请核实并提供正确的文件。",
|
||||||
|
"NationalID": "国民身份证",
|
||||||
|
"FullName": "全名",
|
||||||
|
"InspectionResult": "检查结果",
|
||||||
|
"The email or phone number is already registered.": "该电子邮件或电话号码已被注册。",
|
||||||
|
"To become a ride-sharing driver on the Sefer app, you need to upload your driver\\\"s license, ID document, and car registration document. Our AI system will instantly review and verify their authenticity in just 2-3 minutes. If your documents are approved, you can start working as a driver on the Sefer app. Please note, submitting fraudulent documents is a serious offense and may result in immediate termination and legal consequences.": "要成为Sefer应用程序上的拼车司机,您需要上传驾驶执照、身份证件和汽车登记文件。我们的人工智能系统将在短短2-3分钟内立即审核并验证它们的真实性。如果您的文件获得批准后,您可以开始在 Sefer 应用程序上担任司机。请注意,提交欺诈性文件属于严重犯罪行为,可能会导致立即终止合同并承担法律后果。",
|
||||||
|
"Name (Arabic)": "姓名(阿拉伯语)",
|
||||||
|
"Address": "地址",
|
||||||
|
"driver_license": "驾驶执照",
|
||||||
|
"National ID": "国民身份证",
|
||||||
|
"Full Name (Marital)": "全名(婚姻)",
|
||||||
|
"First Name": "名",
|
||||||
|
"CardID": "卡号",
|
||||||
|
"Full Name": "全名",
|
||||||
|
"Owner Name": "业主姓名",
|
||||||
|
"Chassis": "机壳",
|
||||||
|
"Fuel": "燃料",
|
||||||
|
"Tax Expiry Date": "纳税到期日",
|
||||||
|
"Inspection Date": "检验日期",
|
||||||
|
"Sign in with Google for easier email and name entry": "使用 Google 登录以更轻松地输入电子邮件和姓名",
|
||||||
|
"You will choose allow all the time to be ready receive orders": "您将选择允许所有时间准备好接收订单",
|
||||||
|
"Welcome to Sefer!": "欢迎来到塞弗!",
|
||||||
|
"Get to your destination quickly and easily.": "快速、轻松地到达目的地。",
|
||||||
|
"Enjoy a safe and comfortable ride.": "享受安全舒适的乘车体验。",
|
||||||
|
"Choose Language": "选择语言",
|
||||||
|
"Login": "登录",
|
||||||
|
"Pay with Wallet": "使用钱包支付",
|
||||||
|
"Invalid MPIN": "MPIN 无效",
|
||||||
|
"Invalid OTP": "无效一次性密码",
|
||||||
|
"Enter your email address": "输入你的电子邮箱地址",
|
||||||
|
"Please enter Your Email.": "请输入您的电子邮件。",
|
||||||
|
"Enter your phone number": "输入你的电话号码",
|
||||||
|
"Please enter your phone number.": "请输入您的电话号码。",
|
||||||
|
"Please enter Your Password.": "请输入您的密码。",
|
||||||
|
"Submit": "提交",
|
||||||
|
"if you dont have account": "如果您没有帐户",
|
||||||
|
"Register": "登记",
|
||||||
|
"Accept Ride's Terms & Review Privacy Notice": "接受乘车条款并查看隐私声明",
|
||||||
|
"By selecting 'I Agree' below, I have reviewed and agree to the Terms of Use and acknowledge the Privacy Notice. I am at least 18 years of age.": "选择下面的“我同意”,即表示我已查看并同意使用条款并承认隐私声明。我已年满 18 岁。",
|
||||||
|
"I Agree": "我同意",
|
||||||
|
"First name": "名",
|
||||||
|
"Enter your first name": "输入您的名字",
|
||||||
|
"Please enter your first name.": "请输入您的名字。",
|
||||||
|
"Last name": "姓",
|
||||||
|
"Enter your last name": "输入您的姓氏",
|
||||||
|
"Please enter your last name.": "请输入您的姓氏。",
|
||||||
|
"City": "城市",
|
||||||
|
"Please enter your City.": "请输入您的城市。",
|
||||||
|
"Male": "男性",
|
||||||
|
"Female": "女性",
|
||||||
|
"Verify Email": "验证邮件",
|
||||||
|
"We sent 5 digit to your Email provided": "我们向您提供的电子邮件发送了 5 位数字",
|
||||||
|
"5 digit": "5位数字",
|
||||||
|
"Send Verification Code": "发送验证码",
|
||||||
|
"Your Ride Duration is": "您的骑行时间是",
|
||||||
|
"You will be thier in": "你将会在",
|
||||||
|
"You trip distance is": "您的行程距离是",
|
||||||
|
"Fee is": "费用为",
|
||||||
|
"From :": "从 :",
|
||||||
|
"To :": "到 :",
|
||||||
|
"Add Promo": "添加促销",
|
||||||
|
"Confirm Selection": "确认选择",
|
||||||
|
"distance is": "距离是",
|
||||||
|
"duration is": "持续时间是",
|
||||||
|
"I don't need a ride anymore": "我不再需要搭车了",
|
||||||
|
"I was just trying the application": "我只是在尝试该应用程序",
|
||||||
|
"No driver accepted my request": "没有司机接受我的请求",
|
||||||
|
"I added the wrong pick-up/drop-off location": "我添加了错误的接送地点",
|
||||||
|
"I don't have a reason": "我没有理由",
|
||||||
|
"Other": "其他",
|
||||||
|
"Can we know why you want to cancel Ride ?": "我们可以知道您为什么要取消行程吗?",
|
||||||
|
"Cancel Ride": "取消乘车",
|
||||||
|
"Add Payment Method": "添加付款方式",
|
||||||
|
"Your Wallet balance is": "您的钱包余额是",
|
||||||
|
"Ride Wallet": "骑行钱包",
|
||||||
|
"Type here Place": "在此输入地点",
|
||||||
|
"Are You sure to ride to": "您确定要乘车前往",
|
||||||
|
"Confirm": "确认",
|
||||||
|
"Back": "后退",
|
||||||
|
"You are Delete": "你正在删除",
|
||||||
|
"Deleted": "已删除",
|
||||||
|
"You Dont Have Any places yet !": "您还没有任何位置!",
|
||||||
|
"Favorite Places": "最喜欢的地方",
|
||||||
|
"From : Current Location": "来自 : 当前位置",
|
||||||
|
"Where to": "去哪儿",
|
||||||
|
"Notifications": "通知",
|
||||||
|
"Profile": "轮廓",
|
||||||
|
"Home": "家",
|
||||||
|
"My Cared": "我的关心",
|
||||||
|
"Add Card": "添加卡",
|
||||||
|
"Add Credit Card": "添加信用卡",
|
||||||
|
"Please enter the cardholder name": "请输入持卡人姓名",
|
||||||
|
"Please enter the expiry date": "请输入有效期",
|
||||||
|
"Please enter the CVV code": "请输入CVV码",
|
||||||
|
"Go To Favorite Places": "去最喜欢的地方",
|
||||||
|
"Go to this Target": "前往该目标",
|
||||||
|
"My Profile": "我的简历",
|
||||||
|
"Sign Out": "登出",
|
||||||
|
"Home Page": "主页",
|
||||||
|
"Are you want to go to this site": "你想访问这个网站吗",
|
||||||
|
"MyLocation": "我的位置",
|
||||||
|
"my location": "我的位置",
|
||||||
|
"Target": "目标",
|
||||||
|
"Update": "更新",
|
||||||
|
"You Should choose rate figure": "您应该选择费率数字",
|
||||||
|
"Login Captin": "登录队长",
|
||||||
|
"Register Captin": "注册队长",
|
||||||
|
"Send Verfication Code": "发送验证码",
|
||||||
|
"KM": "知识管理",
|
||||||
|
"End Ride": "结束骑行",
|
||||||
|
"Minute": "分钟",
|
||||||
|
"Go to passenger Location now": "立即前往乘客位置",
|
||||||
|
"Duration of the Ride is": "骑行持续时间为",
|
||||||
|
"Distance of the Ride is": "骑行距离为",
|
||||||
|
"Name of the Passenger is": "乘客姓名是",
|
||||||
|
"Hello this is Captain": "你好,这是队长",
|
||||||
|
"Start the Ride": "开始骑行",
|
||||||
|
"Please Wait If passenger want To Cancel!": "如果旅客想取消,请稍候!",
|
||||||
|
"Total Duration:": "总持续时间:",
|
||||||
|
"Active Duration:": "活跃时间:",
|
||||||
|
"Waiting for Captin ...": "等待队长...",
|
||||||
|
"Age is": "年龄是",
|
||||||
|
"Rating is": "评级为",
|
||||||
|
"to arrive you.": "到达你身边。",
|
||||||
|
"Order History": "订单历史",
|
||||||
|
"My Wallet": "我的钱包",
|
||||||
|
"Tariff": "关税",
|
||||||
|
"Settings": "设置",
|
||||||
|
"Feed Back": "反馈",
|
||||||
|
"Promos": "促销",
|
||||||
|
"Please enter a valid 16-digit card number": "请输入有效的 16 位卡号",
|
||||||
|
"Add Phone": "添加电话",
|
||||||
|
"Please enter a phone number": "请输入电话号码",
|
||||||
|
"You dont Add Emergency Phone Yet!": "您还没有添加紧急电话!",
|
||||||
|
"You will arrive to your destination after": "您将在之后到达目的地",
|
||||||
|
"You can cancel Ride now": "您现在可以取消行程",
|
||||||
|
"You Can cancel Ride After Captain did not come in the time": "队长未按时到达后您可以取消乘车",
|
||||||
|
"If you in Car Now. Press Start The Ride": "如果你现在在车里。按开始骑行",
|
||||||
|
"You Dont Have Any amount in": "您没有任何金额",
|
||||||
|
"Wallet!": "钱包!",
|
||||||
|
"You Have": "你有",
|
||||||
|
"Save Credit Card": "保存信用卡",
|
||||||
|
"Show Promos": "显示促销",
|
||||||
|
"10 and get 4% discount": "满 10 即可享受 4% 折扣",
|
||||||
|
"20 and get 6% discount": "满 20 即可享受 6% 折扣",
|
||||||
|
"40 and get 8% discount": "满 40 即可享受 8% 折扣",
|
||||||
|
"100 and get 11% discount": "满 100 即可享受 11% 折扣",
|
||||||
|
"Pay with Your PayPal": "使用 PayPal 付款",
|
||||||
|
"You will choose one of above !": "您将选择以上之一!",
|
||||||
|
"Cancel": "取消",
|
||||||
|
"Delete My Account": "删除我的账户",
|
||||||
|
"Edit Profile": "编辑个人资料",
|
||||||
|
"Update Gender": "更新性别",
|
||||||
|
"Update Education": "更新教育",
|
||||||
|
"Employment Type": "雇佣类型",
|
||||||
|
"SOS Phone": "求救电话",
|
||||||
|
"High School Diploma": "高中毕业文凭",
|
||||||
|
"Associate Degree": "副学士学位",
|
||||||
|
"Bachelor's Degree": "学士学位",
|
||||||
|
"Master's Degree": "硕士",
|
||||||
|
"Doctoral Degree": "博士学位",
|
||||||
|
"Promos For today": "今天的促销",
|
||||||
|
"Copy this Promo to use it in your Ride!": "复制此促销信息以在您的骑行中使用!",
|
||||||
|
"To change some Settings": "更改某些设置",
|
||||||
|
"To change Language the App": "更改应用程序语言",
|
||||||
|
"Order Request Page": "订单请求页面",
|
||||||
|
"Rouats of Trip": "旅行路线",
|
||||||
|
"Passenger Name is": "乘客姓名是",
|
||||||
|
"Total From Passenger is": "来自乘客的总计是",
|
||||||
|
"Duration To Passenger is": "到达乘客的时间是",
|
||||||
|
"Distance To Passenger is": "到乘客的距离是",
|
||||||
|
"Total For You is": "为您提供的总计是",
|
||||||
|
"Distance is": "距离是",
|
||||||
|
"Duration of Trip is": "行程持续时间为",
|
||||||
|
"Minutes": "分钟",
|
||||||
|
"Apply Order": "申请订单",
|
||||||
|
"Refuse Order": "拒绝订单",
|
||||||
|
"Rate Captain": "评分队长",
|
||||||
|
"Enter your Note": "输入您的备注",
|
||||||
|
"Type something...": "输入一些东西...",
|
||||||
|
"Submit rating": "提交评分",
|
||||||
|
"Rate Passenger": "票价乘客",
|
||||||
|
"Ride Summary": "骑行总结",
|
||||||
|
"welcome_message": "欢迎消息",
|
||||||
|
"app_description": "应用程序描述",
|
||||||
|
"get_to_destination": "到达目的地",
|
||||||
|
"get_a_ride": "搭个便车",
|
||||||
|
"safe_and_comfortable": "安全舒适",
|
||||||
|
"committed_to_safety": "致力于安全",
|
||||||
|
"Driver Applied the Ride for You": "司机为您申请行程",
|
||||||
|
"Show latest promo": "显示最新促销",
|
||||||
|
"Cancel Trip": "取消行程",
|
||||||
|
"Passenger Cancel Trip": "乘客取消行程",
|
||||||
|
"Please stay on the picked point.": "请留在选定的点上。",
|
||||||
|
"Trip is Begin": "旅行开始了",
|
||||||
|
"Hi ,I will go now": "嗨,我现在就去",
|
||||||
|
"Passenger come to you": "乘客来找你",
|
||||||
|
"Hi ,I Arrive your site": "你好,我到达你的网站",
|
||||||
|
"Driver Finish Trip": "司机完成行程",
|
||||||
|
"you will pay to Driver": "您将支付给司机",
|
||||||
|
"Driver Cancel Your Trip": "司机取消您的行程",
|
||||||
|
"you will pay to Driver you will be pay the cost of driver time look to your SEFER Wallet": "您将向司机付款 您将支付司机时间费用 请查看您的 SEFER 钱包",
|
||||||
|
"I will go now": "我要走了",
|
||||||
|
"You Have Tips": "你有秘诀",
|
||||||
|
"tips": "尖端",
|
||||||
|
"Total is": "总计为",
|
||||||
|
"الْمَجْمُوع هُوَ": "🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟",
|
||||||
|
"No,I want": "不,我想",
|
||||||
|
"Your fee is": "您的费用是",
|
||||||
|
"Do you want to pay Tips for this Driver": "您想为此司机支付小费吗",
|
||||||
|
"Tip is": "提示是",
|
||||||
|
"Camera Access Denied.": "相机访问被拒绝。",
|
||||||
|
"Open Settings": "打开设置",
|
||||||
|
"GPS Required Allow !.": "需要 GPS 允许!。",
|
||||||
|
"Your Account is Deleted": "您的帐户已删除",
|
||||||
|
"Are you sure to delete your account?": "您确定要删除您的帐户吗?",
|
||||||
|
"Your data will be erased after 2 weeks": "您的数据将在 2 周后被删除",
|
||||||
|
"And you will can't return to use app after 1 month": "1 个月后您将无法返回使用应用程序",
|
||||||
|
"وَلَن تَسْتَطِيع اسْتِخْدَام التَّطْبِيق مَرَّة أُخْرَى بَعْد شَهْر": "驶",
|
||||||
|
"Enter Your First Name": "输入您的名字",
|
||||||
|
"Are you Sure to LogOut?": "您确定要退出吗?",
|
||||||
|
"Email Wrong": "电子邮件错误",
|
||||||
|
"Email you inserted is Wrong.": "您输入的电子邮件有误。",
|
||||||
|
"You have finished all times": "你已经完成了所有时间",
|
||||||
|
"if you want help you can email us here": "如果您需要帮助,您可以在这里给我们发电子邮件",
|
||||||
|
"Thanks": "谢谢",
|
||||||
|
"Email Us": "给我们发电子邮件",
|
||||||
|
"I cant register in your app in face detection": "我无法在您的应用程序中注册人脸检测",
|
||||||
|
"Hi": "你好",
|
||||||
|
"No face detected": "未检测到人脸",
|
||||||
|
"Image detecting result is": "图像检测结果为",
|
||||||
|
"from 3 times Take Attention": "3次起 注意",
|
||||||
|
"Be sure for take accurate images please": "请务必拍摄准确的图像",
|
||||||
|
"You have": "你有",
|
||||||
|
"لَدَيْك": "😄😄😄😄😄",
|
||||||
|
"image verified": "图像已验证",
|
||||||
|
"Next": "下一个",
|
||||||
|
"There is no help Question here": "这里没有帮助问题",
|
||||||
|
"Call End": "通话结束",
|
||||||
|
"You dont have Points": "您没有积分",
|
||||||
|
"You Are Stopped For this Day !": "今天你就被阻止了!",
|
||||||
|
"You must be charge your Account": "您必须向您的帐户收费",
|
||||||
|
"You Refused 3 Rides this Day that is the reason": "您今天拒绝了 3 次乘车,这就是原因",
|
||||||
|
"See you Tomorrow!": "明天见!",
|
||||||
|
"لِقَائِنَا غَدًا!": "吖吖吖吖!",
|
||||||
|
"Recharge my Account": "为我的帐户充值",
|
||||||
|
"Ok , See you Tomorrow": "好的明天见",
|
||||||
|
"You are Stopped": "你被阻止了",
|
||||||
|
"Connected": "连接的",
|
||||||
|
"Not Connected": "未连接",
|
||||||
|
"Your are far from passenger location": "您距离乘客位置较远",
|
||||||
|
"go to your passenger location before": "前往您的乘客位置之前",
|
||||||
|
"Passenger cancel trip": "乘客取消行程",
|
||||||
|
"يُلْغِي الرَّاكِب الرِّحْلَة": "🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟",
|
||||||
|
"You will get cost of your work for this trip": "您将获得本次旅行的工作费用",
|
||||||
|
"in your wallet": "在你的钱包里",
|
||||||
|
"you gain": "你获得",
|
||||||
|
"Order Cancelled": "订单已取消",
|
||||||
|
"Order Cancelled by Passenger": "乘客取消订单",
|
||||||
|
"Feedback data saved successfully": "反馈数据保存成功",
|
||||||
|
"No Promo for today .": "今天没有促销。",
|
||||||
|
"Select your destination": "选择您的目的地",
|
||||||
|
"Search for your Start point": "搜索您的起点",
|
||||||
|
"Search for waypoint": "搜索航点",
|
||||||
|
"Current Location": "当前位置",
|
||||||
|
"Add Location 1": "添加位置 1",
|
||||||
|
"You must Verify email !.": "您必须验证电子邮件!",
|
||||||
|
"Cropper": "农作物",
|
||||||
|
"Saved Sucssefully": "保存成功",
|
||||||
|
"Select Date": "选择日期",
|
||||||
|
"Birth Date": "出生日期",
|
||||||
|
"Ok": "好的",
|
||||||
|
"the 500 points equal 30 JOD": "500 点等于 30 JOD",
|
||||||
|
"the 500 points equal 30 JOD for you": "500 积分等于 30 JOD 给您",
|
||||||
|
"So go and gain your money": "所以去赚你的钱吧",
|
||||||
|
"فَاسْتَحِقَّ فُلُوسَك وَاكْسِب النِّقَاط": "❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️",
|
||||||
|
"token updated": "令牌已更新",
|
||||||
|
"Add Location 2": "添加位置 2",
|
||||||
|
"Add Location 3": "添加位置 3",
|
||||||
|
"Add Location 4": "添加位置 4",
|
||||||
|
"Waiting for your location": "等待你的位置",
|
||||||
|
"Search for your destination": "搜索您的目的地",
|
||||||
|
"Hi! This is": "你好!这是",
|
||||||
|
"I am using": "我在用",
|
||||||
|
"to ride with": "一起骑",
|
||||||
|
"as the driver.": "作为司机。",
|
||||||
|
"is driving a": "正在驾驶",
|
||||||
|
"with license plate": "有车牌的",
|
||||||
|
"I am currently located at": "我目前位于",
|
||||||
|
"Please go to Car now": "请立即前往汽车",
|
||||||
|
"If you need to reach me, please contact the driver directly at": "如果您需要联系我,请直接联系司机",
|
||||||
|
"No Car or Driver Found in your area.": "在您所在的地区找不到汽车或司机。",
|
||||||
|
"Please Try anther time": "请稍后尝试",
|
||||||
|
"There no Driver Aplly your order sorry for that": "没有司机申请您的订单,对此深表歉意",
|
||||||
|
"Trip Cancelled": "行程取消",
|
||||||
|
"The Driver Will be in your location soon .": "司机很快就会到达您所在的位置。",
|
||||||
|
"The distance less than 500 meter.": "距离小于500米。",
|
||||||
|
"Promo End !": "促销结束!",
|
||||||
|
"There is no notification yet": "目前还没有通知",
|
||||||
|
"Use Touch ID or Face ID to confirm payment": "使用 Touch ID 或 Face ID 确认付款",
|
||||||
|
"Contact us for any questions on your order.": "如果您对订单有任何疑问,请联系我们。",
|
||||||
|
"Pyament Cancelled .": "皮亚门特已取消。",
|
||||||
|
"type here": "在此输入",
|
||||||
|
"Scan Driver License": "扫描驾驶执照",
|
||||||
|
"Please put your licence in these border": "请将您的驾照放在这些边框内",
|
||||||
|
"Camera not initialized yet": "相机尚未初始化",
|
||||||
|
"Take Image": "拍摄图像",
|
||||||
|
"AI Page": "人工智能页面",
|
||||||
|
"Take Picture Of ID Card": "拍摄身份证照片",
|
||||||
|
"Take Picture Of Driver License Card": "拍摄驾驶执照卡的照片",
|
||||||
|
"We are process picture please wait": "我们正在处理图片请稍候",
|
||||||
|
"There is no data yet.": "还没有数据。",
|
||||||
|
"Name :": "姓名 :",
|
||||||
|
"Drivers License Class:": "驾驶执照类别:",
|
||||||
|
"Document Number:": "文件号码:",
|
||||||
|
"Address:": "地址:",
|
||||||
|
"Height:": "高度:",
|
||||||
|
"Expiry Date:": "到期日:",
|
||||||
|
"Date of Birth:": "出生日期:",
|
||||||
|
"You can\\\"t continue with us .": "你不能继续和我们在一起。",
|
||||||
|
"You should renew Driver license": "您应该更新驾驶执照",
|
||||||
|
"Detect Your Face": "检测你的脸",
|
||||||
|
"Go to next step": "进入下一步",
|
||||||
|
"scan Car License.": "扫描汽车驾照。",
|
||||||
|
"aاسْتِخْرَاج رُخْصَة السَّيَّارَة.": "是的。",
|
||||||
|
"Name in arabic": "阿拉伯语名称",
|
||||||
|
"Drivers License Class": "驾驶执照等级",
|
||||||
|
"Date of Birth": "出生日期",
|
||||||
|
"Age": "年龄",
|
||||||
|
"Lets check Car license": "让我们检查一下汽车牌照",
|
||||||
|
"Car Kind": "汽车种类",
|
||||||
|
"Car Plate": "车牌",
|
||||||
|
"Lets check License Back Face": "让我们检查许可证背面",
|
||||||
|
"Car License Card": "汽车牌照",
|
||||||
|
"No image selected yet": "尚未选择图像",
|
||||||
|
"Made :": "制成 :",
|
||||||
|
"model :": "模型 :",
|
||||||
|
"VIN :": "车辆识别号码:",
|
||||||
|
"year :": "年 :",
|
||||||
|
"ُExpire Date": "到期日期",
|
||||||
|
"Login Driver": "登录驱动程序",
|
||||||
|
"Password must br at least 6 character.": "密码必须至少包含 6 个字符。",
|
||||||
|
"if you don\\\"t have account": "如果您没有帐户",
|
||||||
|
"Here recorded trips audio": "这里记录了旅行音频",
|
||||||
|
"Register as Driver": "注册成为司机",
|
||||||
|
"Privacy Notice": "隐私声明",
|
||||||
|
"By selecting 'I Agree' below, I have reviewed and agree to the Terms of Use and acknowledge the": "通过选择下面的“我同意”,我已阅读并同意使用条款并承认",
|
||||||
|
". I am at least 18 years of age.": "。我已年满 18 岁。",
|
||||||
|
"Log Out Page": "注销页面",
|
||||||
|
"Log Off": "注销",
|
||||||
|
"Register Driver": "注册驱动程序",
|
||||||
|
"Verify Email For Driver": "验证司机的电子邮件",
|
||||||
|
"Admin DashBoard": "管理仪表板",
|
||||||
|
"Your name": "你的名字",
|
||||||
|
"your ride is applied": "您的行程已被应用",
|
||||||
|
"Your password": "你的密码",
|
||||||
|
"H and": "手",
|
||||||
|
"LE": "LE",
|
||||||
|
"JOD": "乔德",
|
||||||
|
"m": "米",
|
||||||
|
"We search nearst Driver to you": "我们搜索离您最近的司机",
|
||||||
|
"please wait till driver accept your order": "请等待司机接受您的订单",
|
||||||
|
"No accepted orders? Try raising your trip fee to attract riders.": "没有接受订单?尝试提高行程费用以吸引乘客。",
|
||||||
|
"You should select one": "你应该选择一个",
|
||||||
|
"The driver accept your order for": "司机接受您的订单",
|
||||||
|
"Increase Fee": "增加费用",
|
||||||
|
"No, thanks": "不,谢谢",
|
||||||
|
"The driver on your way": "司机正在路上",
|
||||||
|
"Total price from": "总价从",
|
||||||
|
"Order Details Speed": "订单详情 速度",
|
||||||
|
"Order Applied": "已应用订单",
|
||||||
|
"accepted your order": "已接受您的订单",
|
||||||
|
"We regret to inform you that another driver has accepted this order.": "我们很遗憾地通知您,另一位司机已接受此订单。",
|
||||||
|
"Selected file:": "选定的文件:",
|
||||||
|
"Your trip cost is": "您的旅行费用是",
|
||||||
|
"this will delete all files from your device": "这将从您的设备中删除所有文件",
|
||||||
|
"you have a negative balance of": "您的余额为负数",
|
||||||
|
"in your": "在你的",
|
||||||
|
"Exclusive offers and discounts always with the Sefer app": "Sefer 应用程序始终提供独家优惠和折扣",
|
||||||
|
"Please go to Car Driver": "请前往汽车司机",
|
||||||
|
"wallet due to a previous trip.": "由于之前的旅行,钱包被掏空了。",
|
||||||
|
"Submit Question": "提交问题",
|
||||||
|
"Please enter your Question.": "请输入您的问题。",
|
||||||
|
"Help Details": "帮助详情",
|
||||||
|
"No trip yet found": "尚未找到行程",
|
||||||
|
"No Response yet.": "尚未回复。",
|
||||||
|
"You Earn today is": "您今天的收入是",
|
||||||
|
"You Have in": "你已经在",
|
||||||
|
"Total points is": "总分是",
|
||||||
|
"Total Connection Duration:": "总连接持续时间:",
|
||||||
|
"Passenger name :": "乘客姓名:",
|
||||||
|
"Cost Of Trip IS": "旅行费用是",
|
||||||
|
"Arrival time": "到达时间",
|
||||||
|
"arrival time to reach your point": "到达目的地的到达时间",
|
||||||
|
"For Speed and Delivery trips, the price is calculated dynamically. For Comfort trips, the price is based on time and distance": "对于速度和送货行程,价格是动态计算的。对于舒适旅行,价格根据时间和距离而定",
|
||||||
|
"Hello this is Driver": "你好,这是司机",
|
||||||
|
"Is the Passenger in your Car ?": "乘客在你的车里吗?",
|
||||||
|
"Please wait for the passenger to enter the car before starting the trip.": "请等待乘客上车后再开始行程。",
|
||||||
|
"No ,still Waiting.": "不,还在等待。",
|
||||||
|
"I arrive you": "我到达你",
|
||||||
|
"I Arrive your site": "我到达你的网站",
|
||||||
|
"You are not in near to passenger location": "您不在乘客位置附近",
|
||||||
|
"please go to picker location exactly": "请准确前往选取器位置",
|
||||||
|
"You Can Cancel Trip And get Cost of Trip From": "您可以取消行程并获取行程费用:",
|
||||||
|
"Are you sure to cancel?": "您确定要取消吗?",
|
||||||
|
"Yes": "是的",
|
||||||
|
"Insert Emergincy Number": "插入紧急号码",
|
||||||
|
"Best choice for comfort car and flexible route and stops point": "舒适用车、灵活路线和停靠点的最佳选择",
|
||||||
|
"Insert": "插入",
|
||||||
|
"This is for delivery or a motorcycle.": "这是用于送货或摩托车。",
|
||||||
|
"This trip goes directly from your starting point to your destination for a fixed price. The driver must follow the planned route": "此行程以固定价格直接从您的出发地前往目的地。司机必须按照计划的路线行驶",
|
||||||
|
"You can decline a request without any cost": "您可以拒绝请求,无需支付任何费用",
|
||||||
|
"Perfect for adventure seekers who want to experience something new and exciting": "非常适合想要体验新鲜刺激的冒险爱好者",
|
||||||
|
"My current location is:": "我当前的位置是:",
|
||||||
|
"and I have a trip on": "我有一次旅行",
|
||||||
|
"App with Passenger": "乘客应用程序",
|
||||||
|
"مع الراكب": "请注意",
|
||||||
|
"You will be pay the cost to driver or we will get it from you on next trip": "您将向司机支付费用,或者我们将在下次行程时向您收取费用",
|
||||||
|
"Trip has Steps": "旅行有台阶",
|
||||||
|
"Distance from Passenger to destination is": "乘客到目的地的距离为",
|
||||||
|
"price is": "价格是",
|
||||||
|
"This ride type does not allow changes to the destination or additional stops": "此行程类型不允许更改目的地或增加停靠站",
|
||||||
|
"This price may be changed": "此价格可能会更改",
|
||||||
|
"No SIM card, no problem! Call your driver directly through our app. We use advanced technology to ensure your privacy.": "没有SIM卡,没问题!通过我们的应用程序直接致电您的司机。我们使用先进的技术来确保您的隐私。",
|
||||||
|
"This ride type allows changes, but the price may increase": "此行程类型允许更改,但价格可能会上涨",
|
||||||
|
"message From passenger": "乘客留言",
|
||||||
|
"Select one message": "选择一条消息",
|
||||||
|
"My location is correct. You can search for me using the navigation app": "我的位置是正确的。您可以使用导航应用程序搜索我",
|
||||||
|
"I'm waiting for you": "我在等你",
|
||||||
|
"Hello, I'm at the agreed-upon location": "你好,我已经到了约定的地点",
|
||||||
|
"We noticed the speed is exceeding 100 km/h. Please slow down for your safety. If you feel unsafe, you can share your trip details with a contact or call the police using the red SOS button.": "我们注意到速度超过了 100 公里/小时。为了您的安全,请减速慢行。如果您感觉不安全,可以与联系人分享您的行程详细信息或使用红色 SOS 按钮报警。",
|
||||||
|
"Warning: Speeding detected!": "警告:检测到超速!",
|
||||||
|
"Please help! Contact me as soon as possible.": "请帮忙!尽快联系我。",
|
||||||
|
"Share Trip Details": "分享行程详情",
|
||||||
|
"Car Plate is": "车牌是",
|
||||||
|
"the 300 points equal 300 L.E for you": "300 点等于 300 L.E",
|
||||||
|
"the 300 points equal 300 L.E": "300 点等于 300 L.E",
|
||||||
|
"The payment was not approved. Please try again.": "付款未获批准。请再试一次。",
|
||||||
|
"Payment Failed": "支付失败",
|
||||||
|
"Error": "错误",
|
||||||
|
"An error occurred during the payment process.": "付款过程中发生错误。",
|
||||||
|
"The payment was approved.": "付款已获批准。",
|
||||||
|
"Payment Successful": "支付成功",
|
||||||
|
"No ride found yet": "尚未找到乘车路线",
|
||||||
|
"Accept Order": "接受订单",
|
||||||
|
"reject your order.": "拒绝您的订单。",
|
||||||
|
"Bottom Bar Example": "底栏示例",
|
||||||
|
"Driver phone": "司机电话",
|
||||||
|
"Statistics": "统计数据",
|
||||||
|
"Origin": "起源",
|
||||||
|
"Destination": "目的地",
|
||||||
|
"Driver Name": "司机姓名",
|
||||||
|
"Driver Car Plate": "司机车牌",
|
||||||
|
"Available for rides": "可乘坐",
|
||||||
|
"Scan Id": "扫描 ID",
|
||||||
|
"Camera not initilaized yet": "相机尚未初始化",
|
||||||
|
"Scan ID MklGoogle": "扫描 ID MklGoogle",
|
||||||
|
"Language": "语言",
|
||||||
|
"Jordan": "约旦",
|
||||||
|
"USA": "美国",
|
||||||
|
"Egypt": "埃及",
|
||||||
|
"Turkey": "火鸡",
|
||||||
|
"Saudi Arabia": "沙特阿拉伯",
|
||||||
|
"Qatar": "卡塔尔",
|
||||||
|
"Bahrain": "巴林",
|
||||||
|
"Kuwait": "科威特",
|
||||||
|
"But you have a negative salary of": "但你的工资为负数",
|
||||||
|
"Promo Code": "促销代码",
|
||||||
|
"Your trip distance is": "您的行程距离是",
|
||||||
|
"Enter promo code": "输入促销代码",
|
||||||
|
"You have promo!": "你有促销!",
|
||||||
|
"Cost Duration": "费用持续时间",
|
||||||
|
"Duration is": "持续时间是",
|
||||||
|
"Leave": "离开",
|
||||||
|
"Join": "加入",
|
||||||
|
"You Should be select reason.": "你应该选择理由。",
|
||||||
|
"\\$": "\\$",
|
||||||
|
"Waiting for Driver ...": "等待司机...",
|
||||||
|
"Latest Recent Trip": "最近最近的旅行",
|
||||||
|
"from your list": "从你的清单中",
|
||||||
|
"Do you want to change Work location": "您想更改工作地点吗",
|
||||||
|
"Do you want to change Home location": "您想更改家庭位置吗",
|
||||||
|
"We Are Sorry That we dont have cars in your Location!": "很抱歉,您所在的位置没有汽车!",
|
||||||
|
"Choose from Map": "从地图中选择",
|
||||||
|
"Pick your ride location on the map - Tap to confirm": "在地图上选择您的乘车地点 - 点击确认",
|
||||||
|
"To Work": "上班",
|
||||||
|
"Are you want to go this site": "你想去这个网站吗",
|
||||||
|
"Closest & Cheapest": "最近且最便宜",
|
||||||
|
"Work Saved": "工作已保存",
|
||||||
|
"Sefer is the ride-hailing app that is safe, reliable, and accessible.": "Sefer 是一款安全、可靠且易于使用的叫车应用程序。",
|
||||||
|
"With Sefer, you can get a ride to your destination in minutes.": "通过 Sefer,您可以在几分钟内乘车到达目的地。",
|
||||||
|
"Sefer is committed to safety, and all of our captains are carefully screened and background checked.": "Sefer 致力于安全,我们所有的船长都经过仔细的筛选和背景调查。",
|
||||||
|
"To Home": "回家",
|
||||||
|
"Home Saved": "已保存首页",
|
||||||
|
"Destination selected": "已选择目的地",
|
||||||
|
"Now select start pick": "现在选择开始选择",
|
||||||
|
"Pick from map": "从地图上选择",
|
||||||
|
"Click here point": "点击这里点",
|
||||||
|
"No Car in your site. Sorry!": "您的网站上没有汽车。对不起!",
|
||||||
|
"Nearest Car for you about": "距离您最近的汽车",
|
||||||
|
"N/A": "不适用",
|
||||||
|
"Get Details of Trip": "获取行程详情",
|
||||||
|
"If you want add stop click here": "如果您想添加停靠站,请单击此处",
|
||||||
|
"Driver": "司机",
|
||||||
|
"Where you want go": "你想去的地方",
|
||||||
|
"My Card": "我的卡",
|
||||||
|
"Start Record": "开始记录",
|
||||||
|
"Wallet": "钱包",
|
||||||
|
"History of Trip": "旅行历史",
|
||||||
|
"Helping Center": "帮助中心",
|
||||||
|
"Record saved": "记录已保存",
|
||||||
|
"Trips recorded": "记录的行程",
|
||||||
|
"Select Your Country": "选择您的国家/地区",
|
||||||
|
"To ensure you receive the most accurate information for your location, please select your country below. This will help tailor the app experience and content to your country.": "为确保您收到最准确的所在位置信息,请在下面选择您所在的国家/地区。这将有助于根据您所在的国家/地区定制应用程序体验和内容。",
|
||||||
|
"Are you sure to delete recorded files": "您确定要删除录音文件吗",
|
||||||
|
"Select recorded trip": "选择记录的行程",
|
||||||
|
"Card Number": "卡号",
|
||||||
|
"Hi, Where to": "你好,去哪里",
|
||||||
|
"Pick your destination from Map": "从地图中选择您的目的地",
|
||||||
|
"Add Stops": "添加停靠点",
|
||||||
|
"Get Direction": "得到指引",
|
||||||
|
"Add Location": "添加位置",
|
||||||
|
"Switch Rider": "开关骑手",
|
||||||
|
"You will arrive to your destination after timer end.": "计时器结束后您将到达目的地。",
|
||||||
|
"You can cancel trip": "您可以取消行程",
|
||||||
|
"The driver waitting you in picked location .": "司机在指定地点等候您。",
|
||||||
|
"Pay with Your": "用您的支付",
|
||||||
|
"Pay with Credit Card": "使用信用卡支付",
|
||||||
|
"Payment History": "支付历史",
|
||||||
|
"Show Promos to Charge": "显示促销活动以收费",
|
||||||
|
"Point": "观点",
|
||||||
|
"Driver Wallet": "司机钱包",
|
||||||
|
"Total Points is": "总积分为",
|
||||||
|
"Total Budget from trips is": "旅行总预算为",
|
||||||
|
"Total Amount:": "总金额:",
|
||||||
|
"Total Budget from trips by": "行程总预算",
|
||||||
|
"Credit card is": "信用卡是",
|
||||||
|
"بطاقة الائتمان هي": "巴巴巴",
|
||||||
|
"This amount for all trip I get from Passengers": "我从乘客那里得到的所有行程的金额",
|
||||||
|
"Pay from my budget": "从我的预算中支付",
|
||||||
|
"This amount for all trip I get from Passengers and Collected For me in": "这笔金额是我从乘客处获得并为我收取的所有行程的金额",
|
||||||
|
"You can buy points from your budget": "您可以从预算中购买积分",
|
||||||
|
"insert amount": "插入量",
|
||||||
|
"You can buy Points to let you online": "您可以购买积分让您上网",
|
||||||
|
"by this list below": "通过下面的列表",
|
||||||
|
"من خلال القائمة أدناه": "🇨🇳 🇨🇳",
|
||||||
|
"Create Wallet to receive your money": "创建钱包来接收您的钱",
|
||||||
|
"Enter your feedback here": "在此输入您的反馈",
|
||||||
|
"Please enter your feedback.": "请输入您的反馈。",
|
||||||
|
"Feedback": "反馈",
|
||||||
|
"Click here to Show it in Map": "单击此处在地图中显示它",
|
||||||
|
"Canceled": "取消",
|
||||||
|
"Type your Email": "输入您的电子邮件",
|
||||||
|
"No I want": "不,我想",
|
||||||
|
"Email is": "电子邮件是",
|
||||||
|
"Phone Number is": "电话号码是",
|
||||||
|
"Date of Birth is": "出生日期是",
|
||||||
|
"Sex is": "性别是",
|
||||||
|
"Car Details": "汽车详情",
|
||||||
|
"VIN is": "车辆识别号是",
|
||||||
|
"Color is": "颜色是",
|
||||||
|
"Make is": "品牌是",
|
||||||
|
"Model is": "型号是",
|
||||||
|
"Year is": "年份是",
|
||||||
|
"Edit Your data": "编辑您的数据",
|
||||||
|
"write vin for your car": "为您的汽车写入 vin",
|
||||||
|
"write Color for your car": "为你的车写颜色",
|
||||||
|
"write Make for your car": "为你的汽车写下“Make for your car”",
|
||||||
|
"write Model for your car": "为您的汽车编写型号",
|
||||||
|
"write Year for your car": "写下你的车的年份",
|
||||||
|
"write Expiration Date for your car": "写下您的汽车的到期日期",
|
||||||
|
"Tariffs": "关税",
|
||||||
|
"Minimum fare": "最低票价",
|
||||||
|
"Maximum fare": "最高票价",
|
||||||
|
"Flag-down fee": "降旗费",
|
||||||
|
"Including Tax": "含税",
|
||||||
|
"BookingFee": "预订费",
|
||||||
|
"Morning": "早晨",
|
||||||
|
"from 07:30 till 10:30 (Thursday, Friday, Saturday, Monday)": "07:30 至 10:30(周四、周五、周六、周一)",
|
||||||
|
"Evening": "晚上",
|
||||||
|
"from 12:00 till 15:00 (Thursday, Friday, Saturday, Monday)": "12:00 至 15:00(周四、周五、周六、周一)",
|
||||||
|
"Night": "夜晚",
|
||||||
|
"You have in account": "您账户中有",
|
||||||
|
"Select Country": "选择国家",
|
||||||
|
"Ride Today :": "今天骑行:",
|
||||||
|
"After this period": "这段时间之后",
|
||||||
|
"You can\\\"t cancel!": "您无法取消!",
|
||||||
|
"لا تستطيع الغاء الرحله": "??????????????????????????????????????????????????????????????????????????????",
|
||||||
|
"from 23:59 till 05:30": "23:59 至 05:30",
|
||||||
|
"Rate Driver": "费率驱动因素",
|
||||||
|
"Total Cost is": "总成本为",
|
||||||
|
"Write note": "写笔记",
|
||||||
|
"Time to arrive": "到达时间",
|
||||||
|
"Ride Summaries": "骑行总结",
|
||||||
|
"Total Cost": "总成本",
|
||||||
|
"Average of Hours of": "平均小时数",
|
||||||
|
"is ON for this month": "本月已开启",
|
||||||
|
"Days": "天",
|
||||||
|
"Total Hours on month": "当月总小时数",
|
||||||
|
"Counts of Hours on days": "每天的小时数",
|
||||||
|
"OrderId": "订单号",
|
||||||
|
"created time": "创建时间",
|
||||||
|
"Speed Over": "超速",
|
||||||
|
"I will slow down": "我会放慢脚步",
|
||||||
|
"Map Passenger": "地图乘客",
|
||||||
|
"Be Slowly": "慢慢来",
|
||||||
|
"If you want to make Google Map App run directly when you apply order": "如果您想让Google Map App在申请订单时直接运行",
|
||||||
|
"You can change the language of the app": "您可以更改应用程序的语言",
|
||||||
|
"Your Budget less than needed": "您的预算低于所需",
|
||||||
|
"You can change the Country to get all features": "您可以更改国家/地区以获得所有功能",
|
||||||
|
"Change Country": "Ülke değiştir"
|
||||||
|
},
|
||||||
|
"missing_keys": [
|
||||||
|
"insert Driver national",
|
||||||
|
"🔍 Search & Inquiries",
|
||||||
|
"Driver not found",
|
||||||
|
"Service Agent",
|
||||||
|
"thanks",
|
||||||
|
"Syrian Documents Check",
|
||||||
|
"Giza",
|
||||||
|
"Please enter a valid phone number.",
|
||||||
|
"An error occurred: $error",
|
||||||
|
"Passenger not found",
|
||||||
|
" phone",
|
||||||
|
"⏳ Approval Queue",
|
||||||
|
"Image not available",
|
||||||
|
"Car Color",
|
||||||
|
"Add",
|
||||||
|
"تم إرسال رمز التحقق إلى رقمك ($phoneNumber)",
|
||||||
|
"of",
|
||||||
|
"Added successfully",
|
||||||
|
"message'].toString().tr : 'فشل تسجيل الدخول",
|
||||||
|
"send",
|
||||||
|
"Best Drivers",
|
||||||
|
"إنشاء حساب موظف",
|
||||||
|
"Server Error",
|
||||||
|
"Search by phone number",
|
||||||
|
"Error', 'Invalid OTP",
|
||||||
|
"Name English",
|
||||||
|
"Siro Service",
|
||||||
|
"تم إرسال رمز التحقق إلى رقمك ($phone)",
|
||||||
|
"YYYY-MM-DD",
|
||||||
|
"Image Upload Failed",
|
||||||
|
"${'Step",
|
||||||
|
"أدخل الرمز هنا",
|
||||||
|
"WhatsApp: Activation",
|
||||||
|
"notes'] ?? 'Enter notes here...",
|
||||||
|
"Error', 'Failed to send OTP",
|
||||||
|
"are you sure to pay to this driver gift",
|
||||||
|
"Save and Activate",
|
||||||
|
"رمز التحقق",
|
||||||
|
"Name Arabic",
|
||||||
|
"Done",
|
||||||
|
"New",
|
||||||
|
"Issues",
|
||||||
|
"WhatsApp: Support",
|
||||||
|
"📊 Reporting & Quality",
|
||||||
|
"لديك حساب بالفعل؟ ",
|
||||||
|
"نجاح",
|
||||||
|
"Driver has been activated successfully!",
|
||||||
|
"Please enter a value",
|
||||||
|
"⚡ Quick Actions",
|
||||||
|
"Passenger Not Found",
|
||||||
|
"Please enter a valid email.",
|
||||||
|
"موافق",
|
||||||
|
"Quick Search...",
|
||||||
|
"${'Please enter",
|
||||||
|
"No drivers found",
|
||||||
|
"🚗 Vehicle Management",
|
||||||
|
"Welcome back,",
|
||||||
|
"Alexandria",
|
||||||
|
"WhatsApp: Missing Docs",
|
||||||
|
"Add car",
|
||||||
|
"Edit car details",
|
||||||
|
"Driver details by national number",
|
||||||
|
"خطأ",
|
||||||
|
"Welcome call",
|
||||||
|
"Pending",
|
||||||
|
"Inatleq Service",
|
||||||
|
"Failed to update driver: ${decodedResponse is Map ? decodedResponse['message'] : 'failure'}",
|
||||||
|
"best driver",
|
||||||
|
"note'] ?? 'Enter notes after call",
|
||||||
|
"No Car found yet",
|
||||||
|
"تحقق",
|
||||||
|
"car plate",
|
||||||
|
"Search Details",
|
||||||
|
"Owner",
|
||||||
|
"خطأ', 'الرجاء إدخال رمز صحيح",
|
||||||
|
"Apply Ride",
|
||||||
|
"Order",
|
||||||
|
"Warning",
|
||||||
|
"Quick Communication"
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -1 +0,0 @@
|
|||||||
x lib/
|
|
||||||
@@ -1,55 +0,0 @@
|
|||||||
import 'dart:io';
|
|
||||||
|
|
||||||
void main(List<String> args) {
|
|
||||||
if (args.isEmpty) {
|
|
||||||
print('Usage: dart transform_links.dart <path_to_links.dart>');
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
File file = File(args[0]);
|
|
||||||
if (!file.existsSync()) {
|
|
||||||
print('File not found: ${args[0]}');
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
List<String> lines = file.readAsLinesSync();
|
|
||||||
List<String> newLines = [];
|
|
||||||
|
|
||||||
for (String line in lines) {
|
|
||||||
// We only want to transform static String declarations inside the class.
|
|
||||||
if (line.trim().startsWith('static String ') || line.trim().startsWith('static final String ') || line.trim().startsWith('static const String ')) {
|
|
||||||
// Don't transform appDomain or if it's already a getter
|
|
||||||
if (line.contains(' get ') || line.contains('appDomain')) {
|
|
||||||
newLines.add(line);
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
String modified = line;
|
|
||||||
// Remove 'final ' and 'const ' since getters can't be final/const
|
|
||||||
modified = modified.replaceAll('static final String ', 'static String ');
|
|
||||||
modified = modified.replaceAll('static const String ', 'static String ');
|
|
||||||
|
|
||||||
// Replace '=' with '=>' and remove ';' to add it later?
|
|
||||||
// Actually, it's easier: `static String X = Y;` -> `static String get X => Y;`
|
|
||||||
int eqIndex = modified.indexOf('=');
|
|
||||||
if (eqIndex != -1) {
|
|
||||||
String beforeEq = modified.substring(0, eqIndex).trimRight(); // e.g. "static String paymentServer"
|
|
||||||
String afterEq = modified.substring(eqIndex + 1); // e.g. " 'https://...';"
|
|
||||||
|
|
||||||
// Insert 'get ' before the variable name
|
|
||||||
List<String> parts = beforeEq.split(' ');
|
|
||||||
String varName = parts.last;
|
|
||||||
parts.removeLast();
|
|
||||||
beforeEq = parts.join(' ') + ' get ' + varName;
|
|
||||||
|
|
||||||
modified = beforeEq + ' =>' + afterEq;
|
|
||||||
}
|
|
||||||
newLines.add(modified);
|
|
||||||
} else {
|
|
||||||
newLines.add(line);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
file.writeAsStringSync(newLines.join('\n'));
|
|
||||||
print('Transformed ${args[0]}');
|
|
||||||
}
|
|
||||||
@@ -1,47 +0,0 @@
|
|||||||
import sys
|
|
||||||
import os
|
|
||||||
|
|
||||||
def transform(filepath):
|
|
||||||
if not os.path.exists(filepath):
|
|
||||||
print(f"File not found: {filepath}")
|
|
||||||
return
|
|
||||||
|
|
||||||
with open(filepath, 'r') as f:
|
|
||||||
lines = f.readlines()
|
|
||||||
|
|
||||||
new_lines = []
|
|
||||||
for line in lines:
|
|
||||||
stripped = line.strip()
|
|
||||||
if stripped.startswith('static String ') or stripped.startswith('static final String ') or stripped.startswith('static const String '):
|
|
||||||
if ' get ' in line or 'appDomain' in line:
|
|
||||||
new_lines.append(line)
|
|
||||||
continue
|
|
||||||
|
|
||||||
modified = line.replace('static final String ', 'static String ')
|
|
||||||
modified = modified.replace('static const String ', 'static String ')
|
|
||||||
|
|
||||||
eq_index = modified.find('=')
|
|
||||||
if eq_index != -1:
|
|
||||||
before_eq = modified[:eq_index].rstrip()
|
|
||||||
after_eq = modified[eq_index+1:]
|
|
||||||
|
|
||||||
parts = before_eq.split()
|
|
||||||
var_name = parts[-1]
|
|
||||||
parts.pop()
|
|
||||||
|
|
||||||
before_eq = ' '.join(parts) + ' get ' + var_name
|
|
||||||
modified = before_eq + ' =>' + after_eq
|
|
||||||
new_lines.append(modified)
|
|
||||||
else:
|
|
||||||
new_lines.append(line)
|
|
||||||
|
|
||||||
with open(filepath, 'w') as f:
|
|
||||||
f.writelines(new_lines)
|
|
||||||
print(f"Transformed {filepath}")
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
if len(sys.argv) < 2:
|
|
||||||
print("Usage: python3 transform_links.py <file>")
|
|
||||||
else:
|
|
||||||
for f in sys.argv[1:]:
|
|
||||||
transform(f)
|
|
||||||
Reference in New Issue
Block a user