fk-platform-sdk 1.0.2 → 1.0.3-7.beta4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.vscode/settings.json +3 -0
- package/analytics/index.js +1 -0
- package/dist/FKPlatform.js +1 -2
- package/dist/analytics/Bill.d.ts +31 -0
- package/dist/analytics/Bill.js +103 -0
- package/dist/analytics/Cab.d.ts +26 -0
- package/dist/analytics/Cab.js +66 -0
- package/dist/analytics/EventValidator.d.ts +6 -0
- package/dist/analytics/EventValidator.js +15 -0
- package/dist/analytics/FoodDelivery.d.ts +45 -0
- package/dist/analytics/FoodDelivery.js +131 -0
- package/dist/analytics/FoodDish.d.ts +7 -0
- package/dist/analytics/FoodDish.js +12 -0
- package/dist/analytics/Healthcare.d.ts +131 -0
- package/dist/analytics/Healthcare.js +231 -0
- package/dist/analytics/Person.d.ts +6 -0
- package/dist/analytics/Person.js +11 -0
- package/dist/analytics/Recharge.d.ts +27 -0
- package/dist/analytics/Recharge.js +82 -0
- package/dist/analytics/ShowTicket.d.ts +36 -0
- package/dist/analytics/ShowTicket.js +97 -0
- package/dist/analytics/Travel.d.ts +45 -0
- package/dist/analytics/Travel.js +126 -0
- package/dist/analytics/index.d.ts +8 -0
- package/dist/analytics/index.js +16 -0
- package/dist/analytics/interfaces/AnalyticsEvent.d.ts +5 -0
- package/dist/analytics/interfaces/AnalyticsEvent.js +13 -0
- package/dist/analytics/interfaces/AnalyticsHelper.d.ts +61 -0
- package/dist/analytics/interfaces/AnalyticsModule.d.ts +5 -0
- package/dist/analytics/validation/ValidationMetadata.d.ts +10 -0
- package/dist/analytics/validation/ValidationTypes.d.ts +6 -0
- package/dist/analytics/validation/ValidationTypes.js +12 -0
- package/dist/analytics/validation/Validator.d.ts +3 -0
- package/dist/analytics/validation/Validator.js +38 -0
- package/dist/analytics/validation/decorators.d.ts +16 -0
- package/dist/analytics/validation/decorators.js +67 -0
- package/dist/analytics/web/bill-index.d.ts +1 -0
- package/dist/analytics/web/bill-index.js +4 -0
- package/dist/analytics/web/cab-index.d.ts +1 -0
- package/dist/analytics/web/cab-index.js +4 -0
- package/dist/analytics/web/food-delivery-index.d.ts +1 -0
- package/dist/analytics/web/food-delivery-index.js +4 -0
- package/dist/analytics/web/recharge-index.d.ts +1 -0
- package/dist/analytics/web/recharge-index.js +4 -0
- package/dist/analytics/web/ticket-index.d.ts +1 -0
- package/dist/analytics/web/ticket-index.js +4 -0
- package/dist/analytics/web/travel-index.d.ts +1 -0
- package/dist/analytics/web/travel-index.js +4 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +2 -2
- package/dist/interfaces/FKExtension.d.ts +2 -0
- package/dist/interfaces/FKWindow.d.ts +4 -0
- package/dist/interfaces/NativeModuleManagerProvider.d.ts +12 -8
- package/dist/interfaces/modules/AppVersionModule.d.ts +5 -0
- package/dist/interfaces/{ContactsModule.d.ts → modules/ContactsModule.d.ts} +5 -2
- package/dist/interfaces/modules/DownloaderModule.d.ts +5 -0
- package/dist/interfaces/modules/FontModule.d.ts +5 -0
- package/dist/interfaces/modules/FontModule.js +2 -0
- package/dist/interfaces/modules/GenericUltraShareModule.d.ts +5 -0
- package/dist/interfaces/modules/GenericUltraShareModule.js +2 -0
- package/dist/interfaces/modules/LocationModule.d.ts +7 -0
- package/dist/interfaces/modules/LocationModule.js +2 -0
- package/dist/interfaces/modules/NavigationModule.js +2 -0
- package/dist/interfaces/modules/PermissionsModule.d.ts +18 -0
- package/dist/interfaces/modules/SMSModule.d.ts +5 -0
- package/dist/interfaces/modules/SMSModule.js +2 -0
- package/dist/managers/ModuleManager.d.ts +17 -3
- package/dist/managers/ModuleManager.js +42 -0
- package/dist/managers/NativeModuleCallbackManager.js +17 -12
- package/dist/managers/{modules/NativeModuleManager.d.ts → NativeModuleHelper.d.ts} +9 -5
- package/dist/managers/NativeModuleHelper.js +65 -0
- package/dist/modules/AnalyticsModuleImpl.d.ts +9 -0
- package/dist/modules/AnalyticsModuleImpl.js +54 -0
- package/dist/modules/AppVersionModuleImpl.d.ts +9 -0
- package/dist/modules/AppVersionModuleImpl.js +30 -0
- package/dist/modules/AuthModuleImpl.d.ts +2 -3
- package/dist/modules/AuthModuleImpl.js +7 -4
- package/dist/modules/ContactsModuleImpl.d.ts +3 -4
- package/dist/modules/ContactsModuleImpl.js +12 -5
- package/dist/modules/DownloaderModuleImpl.d.ts +9 -0
- package/dist/modules/DownloaderModuleImpl.js +32 -0
- package/dist/modules/FontModuleImpl.d.ts +9 -0
- package/dist/modules/FontModuleImpl.js +32 -0
- package/dist/modules/LocationModuleImpl.d.ts +11 -0
- package/dist/modules/LocationModuleImpl.js +40 -0
- package/dist/modules/NavigationModuleImpl.d.ts +3 -4
- package/dist/modules/NavigationModuleImpl.js +25 -11
- package/dist/modules/PermissionsModuleImpl.d.ts +3 -4
- package/dist/modules/PermissionsModuleImpl.js +12 -8
- package/dist/modules/SMSModuleImpl.d.ts +9 -0
- package/dist/modules/SMSModuleImpl.js +30 -0
- package/dist/modules/ShareModuleImpl.d.ts +9 -0
- package/dist/modules/ShareModuleImpl.js +33 -0
- package/dist/private/tracking-setup-index.js +12 -5
- package/dist/setup/SetupHelper.d.ts +16 -0
- package/dist/setup/SetupHelper.js +218 -0
- package/dist/types/AppVersionManagerResponse.d.ts +3 -0
- package/dist/types/AppVersionManagerResponse.js +2 -0
- package/dist/types/DeviceInfoResponse.d.ts +3 -0
- package/dist/types/DeviceInfoResponse.js +2 -0
- package/dist/types/DownloadManagerResponse.d.ts +3 -0
- package/dist/types/DownloadManagerResponse.js +2 -0
- package/dist/types/FontsManagerResponse.d.ts +3 -0
- package/dist/types/FontsManagerResponse.js +2 -0
- package/dist/types/GenericShareManagerResponse.d.ts +3 -0
- package/dist/types/GenericShareManagerResponse.js +2 -0
- package/dist/types/LocationManagerResponse.d.ts +3 -0
- package/dist/types/LocationManagerResponse.js +2 -0
- package/dist/types/SMSManagerResponse.d.ts +3 -0
- package/dist/types/SMSManagerResponse.js +2 -0
- package/dist/web/index.d.ts +1 -1
- package/dist/web/index.js +2 -2
- package/package.json +2 -1
- package/dist/interfaces/PermissionsModule.d.ts +0 -9
- package/dist/managers/modules/AuthModuleManager.d.ts +0 -4
- package/dist/managers/modules/ContactsModuleManager.d.ts +0 -9
- package/dist/managers/modules/NativeModuleManager.js +0 -30
- package/dist/managers/modules/NavigationModuleManager.d.ts +0 -10
- package/dist/managers/modules/PermissionsModuleManager.d.ts +0 -14
- /package/dist/{interfaces/ContactsModule.js → analytics/interfaces/AnalyticsHelper.js} +0 -0
- /package/dist/{interfaces/NavigationModule.js → analytics/interfaces/AnalyticsModule.js} +0 -0
- /package/dist/{interfaces/PermissionsModule.js → analytics/validation/ValidationMetadata.js} +0 -0
- /package/dist/{managers/modules/AuthModuleManager.js → interfaces/modules/AppVersionModule.js} +0 -0
- /package/dist/{managers/modules/ContactsModuleManager.js → interfaces/modules/ContactsModule.js} +0 -0
- /package/dist/{managers/modules/NavigationModuleManager.js → interfaces/modules/DownloaderModule.js} +0 -0
- /package/dist/interfaces/{NavigationModule.d.ts → modules/NavigationModule.d.ts} +0 -0
- /package/dist/{managers/modules/PermissionsModuleManager.js → interfaces/modules/PermissionsModule.js} +0 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var Travel = require("./Travel");
|
|
4
|
+
exports.Travel = Travel;
|
|
5
|
+
var Cab = require("./Cab");
|
|
6
|
+
exports.Cab = Cab;
|
|
7
|
+
var Recharge = require("./Recharge");
|
|
8
|
+
exports.Recharge = Recharge;
|
|
9
|
+
var Bill = require("./Bill");
|
|
10
|
+
exports.Bill = Bill;
|
|
11
|
+
var Ticket = require("./ShowTicket");
|
|
12
|
+
exports.Ticket = Ticket;
|
|
13
|
+
var FoodDelivery = require("./FoodDelivery");
|
|
14
|
+
exports.FoodDelivery = FoodDelivery;
|
|
15
|
+
var Healthcare = require("./Healthcare");
|
|
16
|
+
exports.Healthcare = Healthcare;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var EventValidator_1 = require("../EventValidator");
|
|
4
|
+
var AnalyticsEvent = /** @class */ (function () {
|
|
5
|
+
function AnalyticsEvent() {
|
|
6
|
+
this.type = "";
|
|
7
|
+
}
|
|
8
|
+
AnalyticsEvent.prototype.getValidator = function () {
|
|
9
|
+
return new EventValidator_1.EventValidator(new Array());
|
|
10
|
+
};
|
|
11
|
+
return AnalyticsEvent;
|
|
12
|
+
}());
|
|
13
|
+
exports.AnalyticsEvent = AnalyticsEvent;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { Bill, Cab, FoodDelivery, Recharge, Ticket, Travel, Healthcare } from "../";
|
|
2
|
+
import { FoodDish } from "../FoodDish";
|
|
3
|
+
import { Person } from "../Person";
|
|
4
|
+
export interface AnalyticsHelper {
|
|
5
|
+
bill?: BillAnalyticsHelper;
|
|
6
|
+
cab?: CabAnalyticsHelper;
|
|
7
|
+
foodDelivery?: FoodDeliveryAnalyticsHelper;
|
|
8
|
+
recharge?: RechargeAnalyticsHelper;
|
|
9
|
+
ticket?: TicketAnalyticsHelper;
|
|
10
|
+
travel?: TravelAnalyticsHelper;
|
|
11
|
+
healthcare?: HealthcareAnalyticsHelper;
|
|
12
|
+
}
|
|
13
|
+
export interface BillAnalyticsHelper {
|
|
14
|
+
select: (productName: string, connectionNumber: string, category: string, price: number) => Bill.Select;
|
|
15
|
+
proceedToPay: (amountToPay: number, offerAmount: number) => Bill.ProceedToPay;
|
|
16
|
+
customerDetails: (phoneNumber: string, billingAddress: string) => Bill.CustomerDetails;
|
|
17
|
+
orderConfirmation: (orderAmount: number, paymentMethod: string) => Bill.OrderConfirmation;
|
|
18
|
+
}
|
|
19
|
+
export interface CabAnalyticsHelper {
|
|
20
|
+
select: (source: string, destination: string[], cab_type: string, rideNow: boolean, rideLaterTime: Date) => Cab.Select;
|
|
21
|
+
orderConfirmation: (amount: number, paymentMethod: string, couponCode: string) => Cab.OrderConfirmation;
|
|
22
|
+
orderCancellation: (cancellationReason: string) => Cab.OrderCancellation;
|
|
23
|
+
}
|
|
24
|
+
export interface FoodDeliveryAnalyticsHelper {
|
|
25
|
+
search: (searchQuery: string, searchCategory: string) => FoodDelivery.Search;
|
|
26
|
+
select: (restaurant: string) => FoodDelivery.Select;
|
|
27
|
+
checkOut: (products: FoodDish[]) => FoodDelivery.CheckOut;
|
|
28
|
+
proceedToPay: (amountToPay: number, offerAmount: number, deliveryCharge: number, packingCharge: number) => FoodDelivery.ProceedToPay;
|
|
29
|
+
customerDetails: (deliveryAddress: string, addressType: string) => FoodDelivery.CustomerDetails;
|
|
30
|
+
orderConfirmation: (amountToPay: number, paymentMethod: string) => FoodDelivery.OrderConfirmation;
|
|
31
|
+
}
|
|
32
|
+
export interface RechargeAnalyticsHelper {
|
|
33
|
+
select: (phoneNumber: string, operator: string, circle: string, category: string, expiry: Date, amount: number) => Recharge.Select;
|
|
34
|
+
proceedToPay: (amountToPay: number, offerAmount: number) => Recharge.ProceedToPay;
|
|
35
|
+
orderConfirmation: (orderAmount: number, paymentMethod: string) => Recharge.OrderConfirmation;
|
|
36
|
+
}
|
|
37
|
+
export interface TicketAnalyticsHelper {
|
|
38
|
+
select: (name: string, category: string, time: Date, eventLocation: string, noOfPeople: number) => Ticket.Select;
|
|
39
|
+
addToCart: (ticketClass: string, price: number, eventTime: Date) => Ticket.AddToCart;
|
|
40
|
+
proceedToPay: (amountToPay: number, offerAmount: number, noOfTickets: number, bookingCharge: number) => Ticket.ProceedToPay;
|
|
41
|
+
orderConfirmation: (amountToPay: number, paymentMethod: string) => Ticket.OrderConfirmation;
|
|
42
|
+
}
|
|
43
|
+
export interface TravelAnalyticsHelper {
|
|
44
|
+
search: (fromLocation: string, toLocation: string[], date: Date[], roundTrip: boolean, travellerCount: number) => Travel.Search;
|
|
45
|
+
select: (name: string, category: string, price: number) => Travel.Select;
|
|
46
|
+
proceedToPayEvent: (amountToPay: number, offerAmount: number, bookingCharge: number, vasCharge: number) => Travel.ProceedToPay;
|
|
47
|
+
customerDetails: (email: string, phoneNumber: string, travellers: Person[]) => Travel.CustomerDetails;
|
|
48
|
+
orderConfirmation: (amountToPay: number, paymentMethod: string) => Travel.OrderConfirmation;
|
|
49
|
+
}
|
|
50
|
+
export interface HealthcareAnalyticsHelper {
|
|
51
|
+
orderConfirmation: (fk_accountid: string, fkh_userid: string, token_id: string, pincode: string, order_amount: number, offer_amount: number, payment_method: string, fkh_order_id: string, fkh_order_status: string, page_visit_timestamp: number) => Healthcare.OrderConfirmation;
|
|
52
|
+
proceedToPay: (fk_accountid: string, fkh_userid: string, token_id: string, pincode: string, order_amount: number, offer_amount: number, payment_method: string, order_id: string, page_visit_timestamp: number) => Healthcare.ProceedToPay;
|
|
53
|
+
uploadPrescription: (fk_accountid: string, fkh_userid: string, token_id: string, pincode: string, page_name: string, page_visit_timestamp: number) => Healthcare.UploadPrescription;
|
|
54
|
+
addToCart: (fk_accountid: string, fkh_userid: string, token_id: string, pincode: string, product_name: string, product_id: string, price: number, quantity: number, source: string, page_visit_timestamp: number) => Healthcare.AddToCart;
|
|
55
|
+
search: (fk_accountid: string, fkh_userid: string, token_id: string, pincode: string, search_query: string, page_visit_timestamp: number) => Healthcare.Search;
|
|
56
|
+
locationPincodeEnter: (fk_accountid: string, fkh_userid: string, token_id: string, pincode: string, city: string, state: string, page_visit_timestamp: number) => Healthcare.LocationPincodeEnter;
|
|
57
|
+
pageView: (fk_accountid: string, fkh_userid: string, token_id: string, pincode: string, page_name: string, page_visit_timestamp: number) => Healthcare.PageView;
|
|
58
|
+
addAddress: (fk_accountid: string, fkh_userid: string, token_id: string, pincode: string, address_tag: string, subarea: string, page_visit_timestamp: number) => Healthcare.AddAddress;
|
|
59
|
+
obpUploadPrescription: (fk_accountid: string, fkh_userid: string, token_id: string, pincode: string, rx_file_size: number, no_of_rx_uploaded: number, rx_source: string, page_visit_timestamp: number) => Healthcare.ObpUploadPrescription;
|
|
60
|
+
cartContinueButton: (fk_accountid: string, fkh_userid: string, token_id: string, pincode: string, coupon_code: string, cart_value: number, cart_unit_count: number, cart_savings_value: number, cart_item_count: number, page_visit_timestamp: number) => Healthcare.CartContinueButton;
|
|
61
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var ValidationTypes = /** @class */ (function () {
|
|
4
|
+
function ValidationTypes() {
|
|
5
|
+
}
|
|
6
|
+
ValidationTypes.POSITIVE = "Positive";
|
|
7
|
+
ValidationTypes.NON_EMPTY = "NonEmpty";
|
|
8
|
+
ValidationTypes.NON_NEGATIVE = "NonNegative";
|
|
9
|
+
ValidationTypes.NON_NULL = "NonNull";
|
|
10
|
+
return ValidationTypes;
|
|
11
|
+
}());
|
|
12
|
+
exports.ValidationTypes = ValidationTypes;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var ValidationTypes_1 = require("./ValidationTypes");
|
|
4
|
+
function validate(metadataMap, obj, className) {
|
|
5
|
+
var invalidValues = new Array();
|
|
6
|
+
var metadata = metadataMap[className];
|
|
7
|
+
metadata.forEach(function (element) {
|
|
8
|
+
if (element.type === ValidationTypes_1.ValidationTypes.POSITIVE) {
|
|
9
|
+
var num = obj[element.propertyName];
|
|
10
|
+
if (!num) {
|
|
11
|
+
invalidValues.push(element.propertyName + " should not be empty");
|
|
12
|
+
}
|
|
13
|
+
else if (num < 0) {
|
|
14
|
+
invalidValues.push(element.propertyName + " should not be negative");
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
else if (element.type === ValidationTypes_1.ValidationTypes.NON_EMPTY) {
|
|
18
|
+
var str = obj[element.propertyName];
|
|
19
|
+
if (!str || str === "") {
|
|
20
|
+
invalidValues.push(element.propertyName + " should not be empty");
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
else if (element.type === ValidationTypes_1.ValidationTypes.NON_NEGATIVE) {
|
|
24
|
+
var num = obj[element.propertyName];
|
|
25
|
+
if (num && num < 0) {
|
|
26
|
+
invalidValues.push(element.propertyName + " should not be negative");
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
else if (element.type === ValidationTypes_1.ValidationTypes.NON_NULL) {
|
|
30
|
+
var value = obj[element.propertyName];
|
|
31
|
+
if (value === null) {
|
|
32
|
+
invalidValues.push(element.propertyName + " should not be null");
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
return invalidValues;
|
|
37
|
+
}
|
|
38
|
+
exports.validate = validate;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks that the string should not be empty
|
|
3
|
+
*/
|
|
4
|
+
export declare function NonEmpty(metadataMap: any, className: string): any;
|
|
5
|
+
/**
|
|
6
|
+
* Checks that the number should be positive
|
|
7
|
+
*/
|
|
8
|
+
export declare function Positive(metadataMap: any, className: string): any;
|
|
9
|
+
/**
|
|
10
|
+
* Checks that the number should not be negative, null is fine
|
|
11
|
+
*/
|
|
12
|
+
export declare function NonNegative(metadataMap: any, className: string): any;
|
|
13
|
+
/**
|
|
14
|
+
* Checks that the value should not be null
|
|
15
|
+
*/
|
|
16
|
+
export declare function NonNull(metadataMap: any, className: string): any;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var ValidationTypes_1 = require("./ValidationTypes");
|
|
4
|
+
/**
|
|
5
|
+
* Checks that the string should not be empty
|
|
6
|
+
*/
|
|
7
|
+
function NonEmpty(metadataMap, className) {
|
|
8
|
+
return function (object, name) {
|
|
9
|
+
var args = {
|
|
10
|
+
type: ValidationTypes_1.ValidationTypes.NON_EMPTY,
|
|
11
|
+
propertyName: name,
|
|
12
|
+
};
|
|
13
|
+
if (!metadataMap[className]) {
|
|
14
|
+
metadataMap[className] = new Array();
|
|
15
|
+
}
|
|
16
|
+
metadataMap[className].push(args);
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
exports.NonEmpty = NonEmpty;
|
|
20
|
+
/**
|
|
21
|
+
* Checks that the number should be positive
|
|
22
|
+
*/
|
|
23
|
+
function Positive(metadataMap, className) {
|
|
24
|
+
return function (object, name) {
|
|
25
|
+
var args = {
|
|
26
|
+
type: ValidationTypes_1.ValidationTypes.POSITIVE,
|
|
27
|
+
propertyName: name,
|
|
28
|
+
};
|
|
29
|
+
if (!metadataMap[className]) {
|
|
30
|
+
metadataMap[className] = new Array();
|
|
31
|
+
}
|
|
32
|
+
metadataMap[className].push(args);
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
exports.Positive = Positive;
|
|
36
|
+
/**
|
|
37
|
+
* Checks that the number should not be negative, null is fine
|
|
38
|
+
*/
|
|
39
|
+
function NonNegative(metadataMap, className) {
|
|
40
|
+
return function (object, name) {
|
|
41
|
+
var args = {
|
|
42
|
+
type: ValidationTypes_1.ValidationTypes.NON_NEGATIVE,
|
|
43
|
+
propertyName: name,
|
|
44
|
+
};
|
|
45
|
+
if (!metadataMap[className]) {
|
|
46
|
+
metadataMap[className] = new Array();
|
|
47
|
+
}
|
|
48
|
+
metadataMap[className].push(args);
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
exports.NonNegative = NonNegative;
|
|
52
|
+
/**
|
|
53
|
+
* Checks that the value should not be null
|
|
54
|
+
*/
|
|
55
|
+
function NonNull(metadataMap, className) {
|
|
56
|
+
return function (object, name) {
|
|
57
|
+
var args = {
|
|
58
|
+
type: ValidationTypes_1.ValidationTypes.NON_NULL,
|
|
59
|
+
propertyName: name,
|
|
60
|
+
};
|
|
61
|
+
if (!metadataMap[className]) {
|
|
62
|
+
metadataMap[className] = new Array();
|
|
63
|
+
}
|
|
64
|
+
metadataMap[className].push(args);
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
exports.NonNull = NonNull;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { FKPlatformError } from "./errors/FKPlatformError";
|
|
2
2
|
import FKPlatform from "./FKPlatform";
|
|
3
|
-
import { Scope } from "./
|
|
3
|
+
import { Scope } from "./interfaces/modules/PermissionsModule";
|
|
4
4
|
export default FKPlatform;
|
|
5
5
|
export { Scope, FKPlatformError, };
|
package/dist/index.js
CHANGED
|
@@ -3,11 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
var FKPlatformError_1 = require("./errors/FKPlatformError");
|
|
4
4
|
exports.FKPlatformError = FKPlatformError_1.FKPlatformError;
|
|
5
5
|
var FKPlatform_1 = require("./FKPlatform");
|
|
6
|
-
var PermissionsModuleManager_1 = require("./managers/modules/PermissionsModuleManager");
|
|
7
|
-
exports.Scope = PermissionsModuleManager_1.Scope;
|
|
8
6
|
var SetupHelper_1 = require("./setup/SetupHelper");
|
|
9
7
|
var WindowManager_1 = require("./managers/WindowManager");
|
|
10
8
|
var react_native_1 = require("react-native");
|
|
9
|
+
var PermissionsModule_1 = require("./interfaces/modules/PermissionsModule");
|
|
10
|
+
exports.Scope = PermissionsModule_1.Scope;
|
|
11
11
|
if (WindowManager_1.WindowManager.isBrowser()) {
|
|
12
12
|
throw new FKPlatformError_1.FKPlatformError("React Native Environment not detected. Incase of browser, import from fk-platform-sdk/web");
|
|
13
13
|
}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { NativeModuleError } from "../errors/NativeModuleError";
|
|
2
2
|
import FKPlatform from "../FKPlatform";
|
|
3
3
|
import { NativeModuleResponseInternal } from "./NativeModuleResponse";
|
|
4
|
+
import { AnalyticsHelper } from "../analytics/interfaces/AnalyticsHelper";
|
|
4
5
|
export interface FKExtension {
|
|
5
6
|
isPlatformAvailable: () => boolean;
|
|
6
7
|
newPlatformInstance: (clientId: string) => FKPlatform;
|
|
7
8
|
nativeModuleResolve?: (response: NativeModuleResponseInternal) => void;
|
|
8
9
|
nativeModuleReject?: (error: NativeModuleError) => void;
|
|
10
|
+
analyticsHelper?: AnalyticsHelper;
|
|
9
11
|
}
|
|
@@ -1,10 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { NavigationModuleManager } from "../managers/modules/NavigationModuleManager";
|
|
3
|
-
import { PermissionsModuleManager } from "../managers/modules/PermissionsModuleManager";
|
|
4
|
-
import { ContactsModuleManager } from "../managers/modules/ContactsModuleManager";
|
|
1
|
+
import { NativeModuleManager } from "../managers/NativeModuleHelper";
|
|
5
2
|
export interface NativeModuleManagerProvider {
|
|
6
|
-
PermissionsModule:
|
|
7
|
-
NavigationModule:
|
|
8
|
-
AuthModule:
|
|
9
|
-
ContactsModule:
|
|
3
|
+
PermissionsModule: NativeModuleManager;
|
|
4
|
+
NavigationModule: NativeModuleManager;
|
|
5
|
+
AuthModule: NativeModuleManager;
|
|
6
|
+
ContactsModule: NativeModuleManager;
|
|
7
|
+
AnalyticsModule: NativeModuleManager;
|
|
8
|
+
SMSModule: NativeModuleManager;
|
|
9
|
+
LocationModule: NativeModuleManager;
|
|
10
|
+
AppVersionModule: NativeModuleManager;
|
|
11
|
+
DownloaderModule: NativeModuleManager;
|
|
12
|
+
FontModule: NativeModuleManager;
|
|
13
|
+
GenericUltraShareModule: NativeModuleManager;
|
|
10
14
|
}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
import { NativeModuleResponse } from "
|
|
2
|
-
|
|
1
|
+
import { NativeModuleResponse } from "../NativeModuleResponse";
|
|
2
|
+
export interface Contact {
|
|
3
|
+
name: string;
|
|
4
|
+
phoneNumber: string;
|
|
5
|
+
}
|
|
3
6
|
export interface ContactsModule {
|
|
4
7
|
pickPhoneNumber: () => Promise<NativeModuleResponse<Contact>>;
|
|
5
8
|
getContactInfo: (phoneNumbers: string[]) => Promise<NativeModuleResponse<{
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { NativeModuleResponse } from "../NativeModuleResponse";
|
|
2
|
+
import { DownloadManagerResponse } from "../../types/DownloadManagerResponse";
|
|
3
|
+
export interface DownloaderModule {
|
|
4
|
+
fileDownload: (url: string, mimeType: string) => Promise<NativeModuleResponse<DownloadManagerResponse>>;
|
|
5
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { NativeModuleResponse } from "../NativeModuleResponse";
|
|
2
|
+
import { FontsManagerResponse } from "../../types/FontsManagerResponse";
|
|
3
|
+
export interface FontModule {
|
|
4
|
+
downloadFont: (fontFamily: string, url: string) => Promise<NativeModuleResponse<FontsManagerResponse>>;
|
|
5
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { NativeModuleResponse } from "../NativeModuleResponse";
|
|
2
|
+
import { GenericShareManagerResponse } from "../../types/GenericShareManagerResponse";
|
|
3
|
+
export interface GenericUltraShareModule {
|
|
4
|
+
share: (title: string, text: string, url: string) => Promise<NativeModuleResponse<GenericShareManagerResponse>>;
|
|
5
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { DeviceInfoResponse } from "../../types/DeviceInfoResponse";
|
|
2
|
+
import { LocationManagerResponse } from "../../types/LocationManagerResponse";
|
|
3
|
+
import { NativeModuleResponse } from "../NativeModuleResponse";
|
|
4
|
+
export interface LocationModule {
|
|
5
|
+
getUserPinCode: (clientID: string) => Promise<NativeModuleResponse<LocationManagerResponse>>;
|
|
6
|
+
getUserDeviceId: () => Promise<NativeModuleResponse<DeviceInfoResponse>>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { PermissionsManagerResponse } from "../../types/PermissionsManagerResponse";
|
|
2
|
+
import { NativeModuleResponse } from "../NativeModuleResponse";
|
|
3
|
+
export declare enum Scope {
|
|
4
|
+
USER_NAME = "user.name",
|
|
5
|
+
USER_EMAIL = "user.email",
|
|
6
|
+
USER_MOBILE = "user.mobile"
|
|
7
|
+
}
|
|
8
|
+
export interface ScopeAccessRequest {
|
|
9
|
+
scope: Scope;
|
|
10
|
+
isMandatory?: boolean;
|
|
11
|
+
shouldVerify?: boolean;
|
|
12
|
+
}
|
|
13
|
+
export interface PermissionsModule {
|
|
14
|
+
getToken: (scopeRequests: ScopeAccessRequest[]) => Promise<NativeModuleResponse<PermissionsManagerResponse>>;
|
|
15
|
+
getScopes: () => {
|
|
16
|
+
[key: string]: Scope;
|
|
17
|
+
};
|
|
18
|
+
}
|
|
@@ -1,13 +1,27 @@
|
|
|
1
|
-
import { NavigationModule } from "../interfaces/NavigationModule";
|
|
2
|
-
import { PermissionsModule } from "../interfaces/PermissionsModule";
|
|
3
|
-
import { ContactsModule } from "../interfaces/ContactsModule";
|
|
1
|
+
import { NavigationModule } from "../interfaces/modules/NavigationModule";
|
|
2
|
+
import { PermissionsModule } from "../interfaces/modules/PermissionsModule";
|
|
3
|
+
import { ContactsModule } from "../interfaces/modules/ContactsModule";
|
|
4
4
|
import { NativeModuleCallbackManager } from "./NativeModuleCallbackManager";
|
|
5
|
+
import { AnalyticsModule } from "../analytics/interfaces/AnalyticsModule";
|
|
6
|
+
import { SMSModule } from "../interfaces/modules/SMSModule";
|
|
7
|
+
import { LocationModule } from "../interfaces/modules/LocationModule";
|
|
8
|
+
import { AppVersionModule } from "../interfaces/modules/AppVersionModule";
|
|
9
|
+
import { DownloaderModule } from "../interfaces/modules/DownloaderModule";
|
|
10
|
+
import { FontModule } from "../interfaces/modules/FontModule";
|
|
11
|
+
import { GenericUltraShareModule } from "../interfaces/modules/GenericUltraShareModule";
|
|
5
12
|
export declare class ModuleManager {
|
|
6
13
|
private moduleMap;
|
|
7
14
|
constructor(nativeModuleCallbackManager: NativeModuleCallbackManager);
|
|
8
15
|
getNavigationModule(): NavigationModule;
|
|
9
16
|
getPermissionsModule(): PermissionsModule;
|
|
10
17
|
getContactsModule(): ContactsModule;
|
|
18
|
+
getAnalyticsModule(): AnalyticsModule;
|
|
19
|
+
getSMSModule(): SMSModule;
|
|
20
|
+
getLocationModule(): LocationModule;
|
|
21
|
+
getAppVersionModule(): AppVersionModule;
|
|
22
|
+
getDownloaderModule(): DownloaderModule;
|
|
23
|
+
getFontModule(): FontModule;
|
|
24
|
+
getShareModule(): GenericUltraShareModule;
|
|
11
25
|
private addModule;
|
|
12
26
|
private getModule;
|
|
13
27
|
}
|
|
@@ -3,11 +3,25 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
var NavigationModuleImpl_1 = require("../modules/NavigationModuleImpl");
|
|
4
4
|
var PermissionsModuleImpl_1 = require("../modules/PermissionsModuleImpl");
|
|
5
5
|
var ContactsModuleImpl_1 = require("../modules/ContactsModuleImpl");
|
|
6
|
+
var AnalyticsModuleImpl_1 = require("../modules/AnalyticsModuleImpl");
|
|
7
|
+
var SMSModuleImpl_1 = require("../modules/SMSModuleImpl");
|
|
8
|
+
var LocationModuleImpl_1 = require("../modules/LocationModuleImpl");
|
|
9
|
+
var AppVersionModuleImpl_1 = require("../modules/AppVersionModuleImpl");
|
|
10
|
+
var DownloaderModuleImpl_1 = require("../modules/DownloaderModuleImpl");
|
|
11
|
+
var FontModuleImpl_1 = require("../modules/FontModuleImpl");
|
|
12
|
+
var ShareModuleImpl_1 = require("../modules/ShareModuleImpl");
|
|
6
13
|
var MODULE_NAME;
|
|
7
14
|
(function (MODULE_NAME) {
|
|
8
15
|
MODULE_NAME[MODULE_NAME["PERMISSION_MODULE"] = 0] = "PERMISSION_MODULE";
|
|
9
16
|
MODULE_NAME[MODULE_NAME["NAVIGATION_MODULE"] = 1] = "NAVIGATION_MODULE";
|
|
10
17
|
MODULE_NAME[MODULE_NAME["CONTACTS_MODULE"] = 2] = "CONTACTS_MODULE";
|
|
18
|
+
MODULE_NAME[MODULE_NAME["ANALYTICS_MODULE"] = 3] = "ANALYTICS_MODULE";
|
|
19
|
+
MODULE_NAME[MODULE_NAME["SMS_MODULE"] = 4] = "SMS_MODULE";
|
|
20
|
+
MODULE_NAME[MODULE_NAME["LOCATION_MODULE"] = 5] = "LOCATION_MODULE";
|
|
21
|
+
MODULE_NAME[MODULE_NAME["APP_VERSION_MODULE"] = 6] = "APP_VERSION_MODULE";
|
|
22
|
+
MODULE_NAME[MODULE_NAME["DOWNLOADER_MODULE"] = 7] = "DOWNLOADER_MODULE";
|
|
23
|
+
MODULE_NAME[MODULE_NAME["FONT_MODULE"] = 8] = "FONT_MODULE";
|
|
24
|
+
MODULE_NAME[MODULE_NAME["SHARE_MODULE"] = 9] = "SHARE_MODULE";
|
|
11
25
|
})(MODULE_NAME || (MODULE_NAME = {}));
|
|
12
26
|
var ModuleManager = /** @class */ (function () {
|
|
13
27
|
function ModuleManager(nativeModuleCallbackManager) {
|
|
@@ -15,6 +29,13 @@ var ModuleManager = /** @class */ (function () {
|
|
|
15
29
|
this.addModule(MODULE_NAME.PERMISSION_MODULE, new PermissionsModuleImpl_1.PermissionsModuleImpl(nativeModuleCallbackManager));
|
|
16
30
|
this.addModule(MODULE_NAME.NAVIGATION_MODULE, new NavigationModuleImpl_1.NavigationModuleImpl(nativeModuleCallbackManager));
|
|
17
31
|
this.addModule(MODULE_NAME.CONTACTS_MODULE, new ContactsModuleImpl_1.ContactsModuleImpl(nativeModuleCallbackManager));
|
|
32
|
+
this.addModule(MODULE_NAME.ANALYTICS_MODULE, new AnalyticsModuleImpl_1.AnalyticsModuleImpl(nativeModuleCallbackManager));
|
|
33
|
+
this.addModule(MODULE_NAME.SMS_MODULE, new SMSModuleImpl_1.SMSModuleImpl(nativeModuleCallbackManager));
|
|
34
|
+
this.addModule(MODULE_NAME.LOCATION_MODULE, new LocationModuleImpl_1.LocationModuleImpl(nativeModuleCallbackManager));
|
|
35
|
+
this.addModule(MODULE_NAME.APP_VERSION_MODULE, new AppVersionModuleImpl_1.AppVersionModuleImpl(nativeModuleCallbackManager));
|
|
36
|
+
this.addModule(MODULE_NAME.DOWNLOADER_MODULE, new DownloaderModuleImpl_1.DownloaderModuleImpl(nativeModuleCallbackManager));
|
|
37
|
+
this.addModule(MODULE_NAME.FONT_MODULE, new FontModuleImpl_1.FontModuleImpl(nativeModuleCallbackManager));
|
|
38
|
+
this.addModule(MODULE_NAME.SHARE_MODULE, new ShareModuleImpl_1.ShareModuleImpl(nativeModuleCallbackManager));
|
|
18
39
|
}
|
|
19
40
|
ModuleManager.prototype.getNavigationModule = function () {
|
|
20
41
|
return this.getModule(MODULE_NAME.NAVIGATION_MODULE);
|
|
@@ -25,6 +46,27 @@ var ModuleManager = /** @class */ (function () {
|
|
|
25
46
|
ModuleManager.prototype.getContactsModule = function () {
|
|
26
47
|
return this.getModule(MODULE_NAME.CONTACTS_MODULE);
|
|
27
48
|
};
|
|
49
|
+
ModuleManager.prototype.getAnalyticsModule = function () {
|
|
50
|
+
return this.getModule(MODULE_NAME.ANALYTICS_MODULE);
|
|
51
|
+
};
|
|
52
|
+
ModuleManager.prototype.getSMSModule = function () {
|
|
53
|
+
return this.getModule(MODULE_NAME.SMS_MODULE);
|
|
54
|
+
};
|
|
55
|
+
ModuleManager.prototype.getLocationModule = function () {
|
|
56
|
+
return this.getModule(MODULE_NAME.LOCATION_MODULE);
|
|
57
|
+
};
|
|
58
|
+
ModuleManager.prototype.getAppVersionModule = function () {
|
|
59
|
+
return this.getModule(MODULE_NAME.APP_VERSION_MODULE);
|
|
60
|
+
};
|
|
61
|
+
ModuleManager.prototype.getDownloaderModule = function () {
|
|
62
|
+
return this.getModule(MODULE_NAME.DOWNLOADER_MODULE);
|
|
63
|
+
};
|
|
64
|
+
ModuleManager.prototype.getFontModule = function () {
|
|
65
|
+
return this.getModule(MODULE_NAME.FONT_MODULE);
|
|
66
|
+
};
|
|
67
|
+
ModuleManager.prototype.getShareModule = function () {
|
|
68
|
+
return this.getModule(MODULE_NAME.SHARE_MODULE);
|
|
69
|
+
};
|
|
28
70
|
ModuleManager.prototype.addModule = function (moduleName, nativeModule) {
|
|
29
71
|
this.moduleMap[moduleName] = nativeModule;
|
|
30
72
|
};
|
|
@@ -26,20 +26,25 @@ var NativeModuleCallbackManager = /** @class */ (function () {
|
|
|
26
26
|
this.callbackQueue = {};
|
|
27
27
|
}
|
|
28
28
|
NativeModuleCallbackManager.prototype.executeOnBridge = function (moduleInvoker) {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
29
|
+
try {
|
|
30
|
+
var tcs_1 = new tcs_instanceqm_1.TaskCompletionSource();
|
|
31
|
+
var newRequestId = this.getNewCallbackId();
|
|
32
|
+
this.queueCallbackIfRequired(newRequestId, tcs_1);
|
|
33
|
+
moduleInvoker(newRequestId);
|
|
34
|
+
return new Promise(function (resolve, reject) {
|
|
35
|
+
tcs_1.getResultAsync().then(function (response) {
|
|
36
|
+
resolve({
|
|
37
|
+
grantToken: response.grantToken,
|
|
38
|
+
result: response.result,
|
|
39
|
+
});
|
|
40
|
+
}).catch(function (error) {
|
|
41
|
+
reject(error);
|
|
38
42
|
});
|
|
39
|
-
}).catch(function (error) {
|
|
40
|
-
reject(error);
|
|
41
43
|
});
|
|
42
|
-
}
|
|
44
|
+
}
|
|
45
|
+
catch (error) {
|
|
46
|
+
return Promise.reject(error);
|
|
47
|
+
}
|
|
43
48
|
};
|
|
44
49
|
NativeModuleCallbackManager.prototype.checkInit = function () {
|
|
45
50
|
var windowObj = WindowManager_1.WindowManager.getWindow();
|