UNPKG

mappls-map-react-native

Version:

A Mappls GL react native module for creating custom maps

313 lines (280 loc) 10.9 kB
import { NativeModules } from "react-native"; import NativeRCTMGLRestApiModule from "../../../specs/NativeRCTMGLRestApiModule"; import type { AutoSuggestRequest, CategoryMasterRequest, DirectionRefreshRequest, DirectionRequest, DistanceRequest, FeedbackRequest, FuelCostRequest, GeoCodeRequest, HateOsNearbyRequest, MapplsGeoAnalyticsListRequest, MapplsWhiteListRequest, NearbyReportsRequest, NearbyRequest, PlaceDetailsRequest, POIAlongRouteRequest, ReverseGeocodeRequest, RoadTrafficDetailRequest, RouteReportSummaryRequest, TextSearchRequest, TripCostEstimationRequest, WeatherRequest} from "./RestApiRequest" import type { AutoSuggestAtlasResponse } from "./models/AutoSuggestModel"; import type { PlaceResponse } from "./models/ReverseGeoCodeModel"; import type { GeoCodeResponse } from "./models/GeoCodeModel"; import type { PlaceDetailResponse } from "./models/PlaceDetailResponse"; import type { NearbyAtlasResponse } from "./models/NearbyModel"; import type { DirectionsResponse, DirectionsRoute } from "./models/DirectionModel"; import type { DistanceResponse } from "./models/DistanceModel"; import type { POIAlongRouteResponse } from "./models/POIAlongRouteResponse"; import type { GeoAnalyticsListResponse } from "./models/GeoAnalyticsModel"; import type { RoadTrafficDetailsResponse } from "./models/RoadTrafficDetailModel"; import type { NearbyReportResponse } from "./models/NearbyReportsModel"; import type { WeatherResponse } from "./models/WeatherResponseModel"; import type { TripCostEstimationResponse } from "./models/TripCostEstimationModel"; import type { ReportMasterModel } from "./models/ReportMasterModel"; import type { RouteReportSummaryResponse } from "./models/RouteReportSummaryModel"; import type { FuelCostModel } from "./models/FuelCostModel"; const Api = NativeRCTMGLRestApiModule == null ? Object.create(NativeModules.MGLRestApiModule): NativeRCTMGLRestApiModule; if(NativeRCTMGLRestApiModule != null) { Api.AutoSuggestCriteria = NativeRCTMGLRestApiModule?.getConstants()?.AutoSuggestCriteria Api.GeoCodingCriteria = NativeRCTMGLRestApiModule?.getConstants()?.GeoCodingCriteria Api.NearbyCriteria = NativeRCTMGLRestApiModule?.getConstants()?.NearbyCriteria Api.DirectionsCriteria = NativeRCTMGLRestApiModule?.getConstants()?.DirectionsCriteria Api.POICriteria = NativeRCTMGLRestApiModule?.getConstants()?.POICriteria Api.GeoAnalyticsType = NativeRCTMGLRestApiModule?.getConstants()?.GeoAnalyticsType } const autoSuggest = async(params: AutoSuggestRequest): Promise<AutoSuggestAtlasResponse> => { const autoSuggestResponse: string = await Api.autoSuggest(params); return JSON.parse(autoSuggestResponse) } const reverseGeocode = async(params: ReverseGeocodeRequest): Promise<PlaceResponse> => { const revGeoCoderesponse: string = await Api.reverseGeocode(params); return JSON.parse(revGeoCoderesponse) } const geocode = async(params: GeoCodeRequest): Promise<GeoCodeResponse> => { const geoCodeResponse: string = await Api.geocode(params); return JSON.parse(geoCodeResponse) } const textSearch = async(params: TextSearchRequest): Promise<AutoSuggestAtlasResponse> => { const textSearchResponse: string = await Api.textSearch(params); return JSON.parse(textSearchResponse) } const placeDetail = async(params: PlaceDetailsRequest): Promise<PlaceDetailResponse> => { const placeDetailResponse: string = await Api.placeDetail(params); return JSON.parse(placeDetailResponse); } const nearby = async (params: NearbyRequest): Promise<NearbyAtlasResponse> => { const nearbyResponse: string = await Api.nearby(params); return JSON.parse(nearbyResponse); } const direction = async (params: DirectionRequest): Promise<DirectionsResponse> => { const directionResponse: string = await Api.direction(params); return JSON.parse(directionResponse); } const directionRefresh = async (params: DirectionRefreshRequest): Promise<DirectionsRoute> => { const directionResponse: string = await Api.directionRefresh(params); return JSON.parse(directionResponse); } const distance = async (params: DistanceRequest): Promise<DistanceResponse> => { const distanceResponse: string = await Api.distance(params); return JSON.parse(distanceResponse); } const POIAlongRoute = async (params: POIAlongRouteRequest): Promise<POIAlongRouteResponse> => { const poiRouteResponse = await Api.POIAlongRoute(params); return JSON.parse(poiRouteResponse); } const feedback = async (params: FeedbackRequest): Promise<string> => { const feedbackResponse = await Api.feedback(params); return JSON.parse(feedbackResponse); } const geoAnalyticsList = async(params: MapplsGeoAnalyticsListRequest): Promise<GeoAnalyticsListResponse> => { const geoAnalyticsResponse = await Api.geoAnalyticsList(params); return JSON.parse(geoAnalyticsResponse); } const hateosnearby = async (params: HateOsNearbyRequest): Promise<NearbyAtlasResponse> => { const hateosNearby = await Api.hateosnearby(params); return JSON.parse(hateosNearby); } const roadTrafficDetail = async (params: RoadTrafficDetailRequest): Promise<RoadTrafficDetailsResponse> => { const roadTrafficDetailResponse = await Api.roadTrafficDetail(params); return JSON.parse(roadTrafficDetailResponse); } const generateOtp = async (userHandle:string):Promise<string> => { return await Api.generateOtp(userHandle); } const whiteList = async (params: MapplsWhiteListRequest): Promise<void> => { await Api.whiteList(params); return; } const nearbyReports = async (params: NearbyReportsRequest): Promise<NearbyReportResponse> => { const nearbyReportsResponse = await Api.nearbyReports(params); return JSON.parse(nearbyReportsResponse) } const weather = async (params: WeatherRequest): Promise<WeatherResponse> => { const weatherResponse = await Api.weather(params); return JSON.parse(weatherResponse) } const tripCostEstimation = async (params: TripCostEstimationRequest): Promise<TripCostEstimationResponse> => { const estimationResponse = await Api.tripCostEstimation(params); return JSON.parse(estimationResponse) } const eventCategoryMaster = async (params: CategoryMasterRequest): Promise<ReportMasterModel> => { const categoryMasterResponse = await Api.eventCategoryMaster(params); return JSON.parse(categoryMasterResponse) } const routeReportSummary = async (params: RouteReportSummaryRequest): Promise<RouteReportSummaryResponse> => { const routeReportSummaryResponse = await Api.routeReportSummary(params); return JSON.parse(routeReportSummaryResponse) } const fuelCost = async (params: FuelCostRequest): Promise<FuelCostModel> => { const routeReportSummaryResponse = await Api.fuelCost(params); return JSON.parse(routeReportSummaryResponse) } interface AutoSuggestCritriaType { POD_CITY: string; POD_DISTRICT: string; POD_LOCALITY: string; POD_STATE: string; POD_SUB_DISTRICT: string; POD_SUB_LOCALITY: string; POD_SUB_SUB_LOCALITY: string; POD_VILLAGE: string; POD_POI: string; } interface GeoCodingCriteriaType { BIAS_DEFAULT: number; BIAS_RURAL: number; BIAS_URBAN: number; POD_CITY: string; POD_DISTRICT: string; POD_HOUSE_NAME: string; POD_HOUSE_NUMBER: string; POD_LOCALITY: string; POD_PINCODE: string; POD_POI: string; POD_STATE: string; POD_STREET: string; POD_SUB_DISTRICT: string; POD_SUB_LOCALITY: string; POD_SUB_SUB_LOCALITY: string; POD_VILLAGE: string; } interface NearbyCriteriaType { DISTANCE_ASCENDING: string; DISTANCE_DESCENDING: string; NAME_ASCENDING: string; NAME_DESCENDING: string; DISTANCE: string; IMPORTANCE: string; POD_SUB_LOCALITY: string; POD_LOCALITY: string; POD_CITY: string; POD_STATE: string; } interface DirectionsCriteriaType { // EXCLUDE_TUNNEL: string; // EXCLUDE_RESTRICTED: string; EXCLUDE_MOTORWAY: string; EXCLUDE_FERRY: string; EXCLUDE_TOLL: string; ANNOTATION_SPEED: string; ANNOTATION_NODES: string; ANNOTATION_DURATION: string; ANNOTATION_DISTANCE: string; ANNOTATION_BASE_DURATION: string; ANNOTATION_CONGESTION: string; ANNOTATION_SPEED_LIMIT: string; ANNOTATION_TOLL_ROAD: string; OVERVIEW_FALSE: string; OVERVIEW_SIMPLIFIED: string; OVERVIEW_FULL: string; PROFILE_WALKING: string; PROFILE_TRUCKING: string; PROFILE_BIKING: string; PROFILE_DRIVING: string; RESOURCE_ROUTE_TRAFFIC: string; RESOURCE_ROUTE: string; RESOURCE_ROUTE_ETA: string; RESOURCE_DISTANCE: string; RESOURCE_DISTANCE_ETA: string; RESOURCE_DISTANCE_TRAFFIC: string; RESOURCE_ROUTE_PREDICTIVE: string; RESOURCE_DISTANCE_PREDICTIVE: string; // APPROACH_CURB: string; // APPROACH_UNRESTRICTED: string; GEOMETRY_POLYLINE:string; GEOMETRY_POLYLINE6: string; GEOMETRY_COORDINATES: string; IMPERIAL: string; METRIC: string; // SOURCE_ANY: string; // SOURCE_FIRST: string; ROUTE_TYPE_OPTIMAL: number; ROUTE_TYPE_SHORTEST: number; DISTANCE_ROUTE_TYPE_OPTIMAL: number; DISTANCE_ROUTE_TYPE_SHORTEST: number; SPECIFIED_ARRIVAL: number; SPECIFIED_DEPARTURE: number; DATE_TIME_SPECIFIED: number; DATE_TIME_CURRENT: number; } interface POICriteriaType { GEOMETRY_BASE64: string; GEOMETRY_POLYLINE5: string; GEOMETRY_POLYLINE6: string; GEOMETRY_COORDINATES: string; } interface IGeoAnalyticsType { STATE: string; DISTRICT: string; SUB_DISTRICT: string; WARD: string; LOCALITY: string; PANCHAYAT: string; BLOCK: string; PINCODE: string; TOWN: string; CITY: string; VILLAGE: string; SUB_LOCALITY: string; SUB_SUB_LOCALITY: string; } const AutoSuggestCriteria: AutoSuggestCritriaType = Api.AutoSuggestCriteria; const GeoCodingCriteria: GeoCodingCriteriaType = Api.GeoCodingCriteria; const NearbyCriteria: NearbyCriteriaType = Api.NearbyCriteria; const DirectionsCriteria: DirectionsCriteriaType = Api.DirectionsCriteria; const POICriteria: POICriteriaType = Api.POICriteria; const GeoAnalyticsType: IGeoAnalyticsType = Api.GeoAnalyticsType; export const RestApi = { autoSuggest, reverseGeocode, geocode, textSearch, placeDetail, nearby, direction, directionRefresh, distance, POIAlongRoute, feedback, geoAnalyticsList, hateosnearby, roadTrafficDetail, generateOtp, whiteList, nearbyReports, weather, tripCostEstimation, eventCategoryMaster, routeReportSummary, fuelCost, AutoSuggestCriteria, GeoCodingCriteria, NearbyCriteria, DirectionsCriteria, POICriteria, GeoAnalyticsType }