@kiosinc/commons-rn 0.15.2 → 0.15.4

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.
@@ -3,6 +3,12 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ Object.defineProperty(exports, "acceptTOS", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _useTermsOfService.acceptTOS;
10
+ }
11
+ });
6
12
  Object.defineProperty(exports, "useAppVersionCheck", {
7
13
  enumerable: true,
8
14
  get: function () {
@@ -1 +1 @@
1
- {"version":3,"names":["_useDeactivateAccount","require","_useTermsOfService","_useAuth","_useCustomer","_useCheckCustomer","_useAppVersionCheck","_useBusinesses","_useLogout","_useCreateBusiness","_useSaveDevice","_useFirebaseMediaUrl"],"sourceRoot":"../../../src","sources":["hooks/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,qBAAA,GAAAC,OAAA;AACA,IAAAC,kBAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AACA,IAAAI,iBAAA,GAAAJ,OAAA;AACA,IAAAK,mBAAA,GAAAL,OAAA;AACA,IAAAM,cAAA,GAAAN,OAAA;AACA,IAAAO,UAAA,GAAAP,OAAA;AACA,IAAAQ,kBAAA,GAAAR,OAAA;AACA,IAAAS,cAAA,GAAAT,OAAA;AACA,IAAAU,oBAAA,GAAAV,OAAA"}
1
+ {"version":3,"names":["_useDeactivateAccount","require","_useTermsOfService","_useAuth","_useCustomer","_useCheckCustomer","_useAppVersionCheck","_useBusinesses","_useLogout","_useCreateBusiness","_useSaveDevice","_useFirebaseMediaUrl"],"sourceRoot":"../../../src","sources":["hooks/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,qBAAA,GAAAC,OAAA;AACA,IAAAC,kBAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AACA,IAAAI,iBAAA,GAAAJ,OAAA;AACA,IAAAK,mBAAA,GAAAL,OAAA;AACA,IAAAM,cAAA,GAAAN,OAAA;AACA,IAAAO,UAAA,GAAAP,OAAA;AACA,IAAAQ,kBAAA,GAAAR,OAAA;AACA,IAAAS,cAAA,GAAAT,OAAA;AACA,IAAAU,oBAAA,GAAAV,OAAA"}
@@ -14,8 +14,11 @@ var _authentication = require("../api/authentication");
14
14
  var _reactNativeConfig = _interopRequireDefault(require("react-native-config"));
15
15
  var _analytics = require("../utils/analytics");
16
16
  var _analyticsKeys = require("../constants/analyticsKeys");
17
- var _customer = require("../api/customer");
18
17
  var _queryKeys = require("./queryKeys");
18
+ var _reactNativeMmkv = require("react-native-mmkv");
19
+ var _constants = require("../constants");
20
+ var _useTermsOfService = require("./useTermsOfService");
21
+ var _useBusinesses = require("./useBusinesses");
19
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
23
  let confirmationResult;
21
24
  const useAuth = () => {
@@ -25,13 +28,14 @@ const useAuth = () => {
25
28
  t
26
29
  } = (0, _reactI18next.useTranslation)();
27
30
  const queryClient = (0, _reactQuery.useQueryClient)();
31
+ const [, setBusinessId] = (0, _reactNativeMmkv.useMMKVString)(_constants.MMKV_KEYS.BUSINESS_ID);
28
32
  return {
29
33
  useSignUp: () => (0, _reactQuery.useMutation)(async ({
30
34
  params,
31
35
  code
32
36
  }) => {
33
37
  await confirmationResult.confirm(code);
34
- await (0, _authentication.signUpAPI)(params);
38
+ return (0, _authentication.signUpAPI)(params);
35
39
  }, {
36
40
  onError: error => {
37
41
  _components.Alert.show({
@@ -39,7 +43,7 @@ const useAuth = () => {
39
43
  });
40
44
  console.log('error in useSignUp', error);
41
45
  },
42
- onSuccess: async (_, payload) => {
46
+ onSuccess: async (data, payload) => {
43
47
  try {
44
48
  const credential = _auth.default.EmailAuthProvider.credential(payload.params.email, payload.params.password);
45
49
  // Reauthenticate user
@@ -57,14 +61,25 @@ const useAuth = () => {
57
61
  eventName: 'sign_up_completed'
58
62
  });
59
63
 
60
- // Business was created by signUpAPIensure SelectBusiness refetches
61
- queryClient.invalidateQueries([_queryKeys.queryKeys.BUSINESSES]);
64
+ // Accept TOS on behalf of new user (sets agreementsUpdated correct field)
65
+ await (0, _useTermsOfService.acceptTOS)((0, _auth.default)().currentUser.uid);
62
66
 
63
- // Create new customer in customer collections
64
- await (0, _customer.createCustomer)({
65
- uid: (0, _auth.default)().currentUser.uid,
66
- isAgreementUpdated: true
67
- });
67
+ // Write businessId to MMKV so SelectBusiness is skipped for new users
68
+ // POST /business returns { businessId } when a name was provided, {} for gusteau
69
+ const businessId = data?.data?.businessId;
70
+ if (businessId) {
71
+ setBusinessId(businessId);
72
+ } else {
73
+ // Fallback: gusteau signup or API returned empty — fetch from /user/businessData
74
+ const bizResponse = await (0, _useBusinesses.getBusinessData)();
75
+ const firstId = bizResponse?.data?.businesses?.[0]?.id;
76
+ if (firstId) setBusinessId(firstId);
77
+ }
78
+
79
+ // Invalidate businesses so SelectBusiness (when visited manually) is fresh
80
+ queryClient.invalidateQueries([_queryKeys.queryKeys.BUSINESSES]);
81
+ // Invalidate TOS gate in case it was already cached as `true`
82
+ queryClient.invalidateQueries([(0, _auth.default)().currentUser.uid, _queryKeys.queryKeys.TERMS_AND_CONDITIONS]);
68
83
  } catch (error) {
69
84
  console.log('error', error);
70
85
  // Sign out user if something goes wrong
@@ -1 +1 @@
1
- {"version":3,"names":["_reactQuery","require","_auth","_interopRequireDefault","_providers","_native","_reactI18next","_components","_authentication","_reactNativeConfig","_analytics","_analyticsKeys","_customer","_queryKeys","obj","__esModule","default","confirmationResult","useAuth","dispatch","useAuthenticationDispatch","navigation","useNavigation","t","useTranslation","queryClient","useQueryClient","useSignUp","useMutation","params","code","confirm","signUpAPI","onError","error","Alert","show","title","console","log","onSuccess","_","payload","credential","auth","EmailAuthProvider","email","password","currentUser","reauthenticateWithCredential","reload","changeUser","analytics","identify","uid","now","Date","toISOString","profile","set","analyticsKeys","registrationDate","app","Config","URL_SCHEME","track","eventName","invalidateQueries","queryKeys","BUSINESSES","createCustomer","isAgreementUpdated","signOut","catch","StackActions","popToTop","useIsCheckRegistered","checkIsRegisteredAPI","response","data","isRegistered","navigate","useConfirmPhoneNumber","properties","method","e","useVerifyPhoneNumberForLogin","phoneNumber","signInWithPhoneNumber","description","emailOrPhoneNumber","message","useVerifyPhoneNumber","useResetPassword","sendPasswordResetEmail","exports"],"sourceRoot":"../../../src","sources":["hooks/useAuth.ts"],"mappings":"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"}
1
+ {"version":3,"names":["_reactQuery","require","_auth","_interopRequireDefault","_providers","_native","_reactI18next","_components","_authentication","_reactNativeConfig","_analytics","_analyticsKeys","_queryKeys","_reactNativeMmkv","_constants","_useTermsOfService","_useBusinesses","obj","__esModule","default","confirmationResult","useAuth","dispatch","useAuthenticationDispatch","navigation","useNavigation","t","useTranslation","queryClient","useQueryClient","setBusinessId","useMMKVString","MMKV_KEYS","BUSINESS_ID","useSignUp","useMutation","params","code","confirm","signUpAPI","onError","error","Alert","show","title","console","log","onSuccess","data","payload","credential","auth","EmailAuthProvider","email","password","currentUser","reauthenticateWithCredential","reload","changeUser","analytics","identify","uid","now","Date","toISOString","profile","set","analyticsKeys","registrationDate","app","Config","URL_SCHEME","track","eventName","acceptTOS","businessId","bizResponse","getBusinessData","firstId","businesses","id","invalidateQueries","queryKeys","BUSINESSES","TERMS_AND_CONDITIONS","signOut","catch","StackActions","popToTop","useIsCheckRegistered","checkIsRegisteredAPI","response","isRegistered","navigate","useConfirmPhoneNumber","properties","method","e","useVerifyPhoneNumberForLogin","phoneNumber","signInWithPhoneNumber","description","emailOrPhoneNumber","message","useVerifyPhoneNumber","useResetPassword","sendPasswordResetEmail","exports"],"sourceRoot":"../../../src","sources":["hooks/useAuth.ts"],"mappings":"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"}
@@ -3,14 +3,35 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ exports.acceptTOS = acceptTOS;
6
7
  exports.useTermsOfService = void 0;
7
8
  var _reactQuery = require("@tanstack/react-query");
8
9
  var _firestore = _interopRequireDefault(require("@react-native-firebase/firestore"));
9
10
  var _auth = _interopRequireDefault(require("@react-native-firebase/auth"));
10
11
  var _utils = require("../utils");
11
12
  var _customer = require("../api/customer");
13
+ var _analytics = require("../utils/analytics");
12
14
  var _queryKeys = require("./queryKeys");
13
15
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16
+ async function acceptTOS(uid) {
17
+ const query = (0, _firestore.default)().doc(`customers/${uid}`);
18
+ const customerSnapshot = await query.get();
19
+ if (!customerSnapshot.exists) {
20
+ await (0, _customer.createCustomer)({
21
+ uid
22
+ });
23
+ }
24
+ await query.set({
25
+ uid,
26
+ updated: (0, _utils.getCurrentTimestamp)(),
27
+ agreementsUpdated: new Date().toISOString()
28
+ }, {
29
+ merge: true
30
+ });
31
+ _analytics.analytics.track({
32
+ eventName: 'term_of_service_accepted'
33
+ });
34
+ }
14
35
  const useTermsOfService = () => {
15
36
  const queryClient = (0, _reactQuery.useQueryClient)();
16
37
  const user = (0, _auth.default)().currentUser;
@@ -43,25 +64,10 @@ const useTermsOfService = () => {
43
64
  enabled: !!user?.uid && !user?.isAnonymous
44
65
  }),
45
66
  useAgreeTermsOfService: () => (0, _reactQuery.useMutation)(async () => {
46
- if (!user?.uid || user.isAnonymous) return;
47
- const query = await (0, _firestore.default)().doc(`customers/${user.uid}`);
48
- const customerSnapshot = await query.get();
49
- if (!customerSnapshot.exists) {
50
- await (0, _customer.createCustomer)({
51
- uid: user.uid
52
- });
53
- }
54
- await query.set({
55
- uid: user.uid,
56
- updated: (0, _utils.getCurrentTimestamp)(),
57
- agreementsUpdated: new Date().toISOString()
58
- }, {
59
- merge: true
60
- });
61
- _utils.analytics.track({
62
- eventName: 'term_of_service_accepted'
63
- });
64
- await queryClient.invalidateQueries([user.uid, _queryKeys.queryKeys.TERMS_AND_CONDITIONS]);
67
+ const currentUser = (0, _auth.default)().currentUser;
68
+ if (!currentUser?.uid || currentUser.isAnonymous) return;
69
+ await acceptTOS(currentUser.uid);
70
+ await queryClient.invalidateQueries([currentUser.uid, _queryKeys.queryKeys.TERMS_AND_CONDITIONS]);
65
71
  })
66
72
  };
67
73
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_reactQuery","require","_firestore","_interopRequireDefault","_auth","_utils","_customer","_queryKeys","obj","__esModule","default","useTermsOfService","queryClient","useQueryClient","user","firebase","currentUser","useTermsOfServiceURL","useQuery","queryKeys","TERMS_AND_CONDITIONS_URL","system","firestore","doc","get","data","url","staleTime","Infinity","useShouldShowTermsOfService","uid","TERMS_AND_CONDITIONS","customerSnapshot","exists","customer","agreementsUpdated","Date","updated","DEFAULT_STALE_TIME","enabled","isAnonymous","useAgreeTermsOfService","useMutation","query","createCustomer","set","getCurrentTimestamp","toISOString","merge","analytics","track","eventName","invalidateQueries","exports"],"sourceRoot":"../../../src","sources":["hooks/useTermsOfService.ts"],"mappings":"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"}
1
+ {"version":3,"names":["_reactQuery","require","_firestore","_interopRequireDefault","_auth","_utils","_customer","_analytics","_queryKeys","obj","__esModule","default","acceptTOS","uid","query","firestore","doc","customerSnapshot","get","exists","createCustomer","set","updated","getCurrentTimestamp","agreementsUpdated","Date","toISOString","merge","analytics","track","eventName","useTermsOfService","queryClient","useQueryClient","user","firebase","currentUser","useTermsOfServiceURL","useQuery","queryKeys","TERMS_AND_CONDITIONS_URL","system","data","url","staleTime","Infinity","useShouldShowTermsOfService","TERMS_AND_CONDITIONS","customer","DEFAULT_STALE_TIME","enabled","isAnonymous","useAgreeTermsOfService","useMutation","invalidateQueries","exports"],"sourceRoot":"../../../src","sources":["hooks/useTermsOfService.ts"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  export { useDeactivateAccount } from './useDeactivateAccount';
2
- export { useTermsOfService } from './useTermsOfService';
2
+ export { useTermsOfService, acceptTOS } from './useTermsOfService';
3
3
  export { useAuth } from './useAuth';
4
4
  export { useCustomerQueries } from './useCustomer';
5
5
  export { useCheckCustomer } from './useCheckCustomer';
@@ -1 +1 @@
1
- {"version":3,"names":["useDeactivateAccount","useTermsOfService","useAuth","useCustomerQueries","useCheckCustomer","useAppVersionCheck","useBusinesses","useLogout","useCreateBusiness","useSaveDeviceDetails","useFirebaseMediaUrl"],"sourceRoot":"../../../src","sources":["hooks/index.ts"],"mappings":"AAAA,SAASA,oBAAoB,QAAQ,wBAAwB;AAC7D,SAASC,iBAAiB,QAAQ,qBAAqB;AACvD,SAASC,OAAO,QAAQ,WAAW;AACnC,SAASC,kBAAkB,QAAQ,eAAe;AAClD,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,kBAAkB,QAAQ,sBAAsB;AACzD,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,iBAAiB,QAAQ,qBAAqB;AACvD,SAASC,oBAAoB,QAAQ,iBAAiB;AACtD,SAASC,mBAAmB,QAAQ,uBAAuB"}
1
+ {"version":3,"names":["useDeactivateAccount","useTermsOfService","acceptTOS","useAuth","useCustomerQueries","useCheckCustomer","useAppVersionCheck","useBusinesses","useLogout","useCreateBusiness","useSaveDeviceDetails","useFirebaseMediaUrl"],"sourceRoot":"../../../src","sources":["hooks/index.ts"],"mappings":"AAAA,SAASA,oBAAoB,QAAQ,wBAAwB;AAC7D,SAASC,iBAAiB,EAAEC,SAAS,QAAQ,qBAAqB;AAClE,SAASC,OAAO,QAAQ,WAAW;AACnC,SAASC,kBAAkB,QAAQ,eAAe;AAClD,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,kBAAkB,QAAQ,sBAAsB;AACzD,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,iBAAiB,QAAQ,qBAAqB;AACvD,SAASC,oBAAoB,QAAQ,iBAAiB;AACtD,SAASC,mBAAmB,QAAQ,uBAAuB"}
@@ -8,8 +8,11 @@ import { checkIsRegisteredAPI, signUpAPI } from '../api/authentication';
8
8
  import Config from 'react-native-config';
9
9
  import { analytics } from '../utils/analytics';
10
10
  import { analyticsKeys } from '../constants/analyticsKeys';
11
- import { createCustomer } from '../api/customer';
12
11
  import { queryKeys } from './queryKeys';
12
+ import { useMMKVString } from 'react-native-mmkv';
13
+ import { MMKV_KEYS } from '../constants';
14
+ import { acceptTOS } from './useTermsOfService';
15
+ import { getBusinessData } from './useBusinesses';
13
16
  let confirmationResult;
14
17
  export const useAuth = () => {
15
18
  const dispatch = useAuthenticationDispatch();
@@ -18,13 +21,14 @@ export const useAuth = () => {
18
21
  t
19
22
  } = useTranslation();
20
23
  const queryClient = useQueryClient();
24
+ const [, setBusinessId] = useMMKVString(MMKV_KEYS.BUSINESS_ID);
21
25
  return {
22
26
  useSignUp: () => useMutation(async ({
23
27
  params,
24
28
  code
25
29
  }) => {
26
30
  await confirmationResult.confirm(code);
27
- await signUpAPI(params);
31
+ return signUpAPI(params);
28
32
  }, {
29
33
  onError: error => {
30
34
  Alert.show({
@@ -32,7 +36,7 @@ export const useAuth = () => {
32
36
  });
33
37
  console.log('error in useSignUp', error);
34
38
  },
35
- onSuccess: async (_, payload) => {
39
+ onSuccess: async (data, payload) => {
36
40
  try {
37
41
  const credential = auth.EmailAuthProvider.credential(payload.params.email, payload.params.password);
38
42
  // Reauthenticate user
@@ -50,14 +54,25 @@ export const useAuth = () => {
50
54
  eventName: 'sign_up_completed'
51
55
  });
52
56
 
53
- // Business was created by signUpAPIensure SelectBusiness refetches
54
- queryClient.invalidateQueries([queryKeys.BUSINESSES]);
57
+ // Accept TOS on behalf of new user (sets agreementsUpdated correct field)
58
+ await acceptTOS(auth().currentUser.uid);
55
59
 
56
- // Create new customer in customer collections
57
- await createCustomer({
58
- uid: auth().currentUser.uid,
59
- isAgreementUpdated: true
60
- });
60
+ // Write businessId to MMKV so SelectBusiness is skipped for new users
61
+ // POST /business returns { businessId } when a name was provided, {} for gusteau
62
+ const businessId = data?.data?.businessId;
63
+ if (businessId) {
64
+ setBusinessId(businessId);
65
+ } else {
66
+ // Fallback: gusteau signup or API returned empty — fetch from /user/businessData
67
+ const bizResponse = await getBusinessData();
68
+ const firstId = bizResponse?.data?.businesses?.[0]?.id;
69
+ if (firstId) setBusinessId(firstId);
70
+ }
71
+
72
+ // Invalidate businesses so SelectBusiness (when visited manually) is fresh
73
+ queryClient.invalidateQueries([queryKeys.BUSINESSES]);
74
+ // Invalidate TOS gate in case it was already cached as `true`
75
+ queryClient.invalidateQueries([auth().currentUser.uid, queryKeys.TERMS_AND_CONDITIONS]);
61
76
  } catch (error) {
62
77
  console.log('error', error);
63
78
  // Sign out user if something goes wrong
@@ -1 +1 @@
1
- {"version":3,"names":["useMutation","useQueryClient","auth","changeUser","useAuthenticationDispatch","StackActions","useNavigation","useTranslation","Alert","checkIsRegisteredAPI","signUpAPI","Config","analytics","analyticsKeys","createCustomer","queryKeys","confirmationResult","useAuth","dispatch","navigation","t","queryClient","useSignUp","params","code","confirm","onError","error","show","title","console","log","onSuccess","_","payload","credential","EmailAuthProvider","email","password","currentUser","reauthenticateWithCredential","reload","identify","uid","now","Date","toISOString","profile","set","registrationDate","app","URL_SCHEME","track","eventName","invalidateQueries","BUSINESSES","isAgreementUpdated","signOut","catch","popToTop","useIsCheckRegistered","response","data","isRegistered","navigate","useConfirmPhoneNumber","properties","method","e","useVerifyPhoneNumberForLogin","phoneNumber","signInWithPhoneNumber","description","emailOrPhoneNumber","message","useVerifyPhoneNumber","useResetPassword","sendPasswordResetEmail"],"sourceRoot":"../../../src","sources":["hooks/useAuth.ts"],"mappings":"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"}
1
+ {"version":3,"names":["useMutation","useQueryClient","auth","changeUser","useAuthenticationDispatch","StackActions","useNavigation","useTranslation","Alert","checkIsRegisteredAPI","signUpAPI","Config","analytics","analyticsKeys","queryKeys","useMMKVString","MMKV_KEYS","acceptTOS","getBusinessData","confirmationResult","useAuth","dispatch","navigation","t","queryClient","setBusinessId","BUSINESS_ID","useSignUp","params","code","confirm","onError","error","show","title","console","log","onSuccess","data","payload","credential","EmailAuthProvider","email","password","currentUser","reauthenticateWithCredential","reload","identify","uid","now","Date","toISOString","profile","set","registrationDate","app","URL_SCHEME","track","eventName","businessId","bizResponse","firstId","businesses","id","invalidateQueries","BUSINESSES","TERMS_AND_CONDITIONS","signOut","catch","popToTop","useIsCheckRegistered","response","isRegistered","navigate","useConfirmPhoneNumber","properties","method","e","useVerifyPhoneNumberForLogin","phoneNumber","signInWithPhoneNumber","description","emailOrPhoneNumber","message","useVerifyPhoneNumber","useResetPassword","sendPasswordResetEmail"],"sourceRoot":"../../../src","sources":["hooks/useAuth.ts"],"mappings":"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"}
@@ -3,8 +3,27 @@ import firestore from '@react-native-firebase/firestore';
3
3
  import firebase from '@react-native-firebase/auth';
4
4
  import { getCurrentTimestamp } from '../utils';
5
5
  import { createCustomer } from '../api/customer';
6
- import { analytics } from '../utils';
6
+ import { analytics } from '../utils/analytics';
7
7
  import { DEFAULT_STALE_TIME, queryKeys } from './queryKeys';
8
+ export async function acceptTOS(uid) {
9
+ const query = firestore().doc(`customers/${uid}`);
10
+ const customerSnapshot = await query.get();
11
+ if (!customerSnapshot.exists) {
12
+ await createCustomer({
13
+ uid
14
+ });
15
+ }
16
+ await query.set({
17
+ uid,
18
+ updated: getCurrentTimestamp(),
19
+ agreementsUpdated: new Date().toISOString()
20
+ }, {
21
+ merge: true
22
+ });
23
+ analytics.track({
24
+ eventName: 'term_of_service_accepted'
25
+ });
26
+ }
8
27
  export const useTermsOfService = () => {
9
28
  const queryClient = useQueryClient();
10
29
  const user = firebase().currentUser;
@@ -37,25 +56,10 @@ export const useTermsOfService = () => {
37
56
  enabled: !!user?.uid && !user?.isAnonymous
38
57
  }),
39
58
  useAgreeTermsOfService: () => useMutation(async () => {
40
- if (!user?.uid || user.isAnonymous) return;
41
- const query = await firestore().doc(`customers/${user.uid}`);
42
- const customerSnapshot = await query.get();
43
- if (!customerSnapshot.exists) {
44
- await createCustomer({
45
- uid: user.uid
46
- });
47
- }
48
- await query.set({
49
- uid: user.uid,
50
- updated: getCurrentTimestamp(),
51
- agreementsUpdated: new Date().toISOString()
52
- }, {
53
- merge: true
54
- });
55
- analytics.track({
56
- eventName: 'term_of_service_accepted'
57
- });
58
- await queryClient.invalidateQueries([user.uid, queryKeys.TERMS_AND_CONDITIONS]);
59
+ const currentUser = firebase().currentUser;
60
+ if (!currentUser?.uid || currentUser.isAnonymous) return;
61
+ await acceptTOS(currentUser.uid);
62
+ await queryClient.invalidateQueries([currentUser.uid, queryKeys.TERMS_AND_CONDITIONS]);
59
63
  })
60
64
  };
61
65
  };
@@ -1 +1 @@
1
- {"version":3,"names":["useMutation","useQuery","useQueryClient","firestore","firebase","getCurrentTimestamp","createCustomer","analytics","DEFAULT_STALE_TIME","queryKeys","useTermsOfService","queryClient","user","currentUser","useTermsOfServiceURL","TERMS_AND_CONDITIONS_URL","system","doc","get","data","url","staleTime","Infinity","useShouldShowTermsOfService","uid","TERMS_AND_CONDITIONS","customerSnapshot","exists","customer","agreementsUpdated","Date","updated","enabled","isAnonymous","useAgreeTermsOfService","query","set","toISOString","merge","track","eventName","invalidateQueries"],"sourceRoot":"../../../src","sources":["hooks/useTermsOfService.ts"],"mappings":"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"}
1
+ {"version":3,"names":["useMutation","useQuery","useQueryClient","firestore","firebase","getCurrentTimestamp","createCustomer","analytics","DEFAULT_STALE_TIME","queryKeys","acceptTOS","uid","query","doc","customerSnapshot","get","exists","set","updated","agreementsUpdated","Date","toISOString","merge","track","eventName","useTermsOfService","queryClient","user","currentUser","useTermsOfServiceURL","TERMS_AND_CONDITIONS_URL","system","data","url","staleTime","Infinity","useShouldShowTermsOfService","TERMS_AND_CONDITIONS","customer","enabled","isAnonymous","useAgreeTermsOfService","invalidateQueries"],"sourceRoot":"../../../src","sources":["hooks/useTermsOfService.ts"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  export { useDeactivateAccount } from './useDeactivateAccount';
2
- export { useTermsOfService } from './useTermsOfService';
2
+ export { useTermsOfService, acceptTOS } from './useTermsOfService';
3
3
  export { useAuth } from './useAuth';
4
4
  export { useCustomerQueries } from './useCustomer';
5
5
  export { useCheckCustomer } from './useCheckCustomer';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -6,7 +6,7 @@ export type TUserData = {
6
6
  password: string;
7
7
  };
8
8
  export declare const useAuth: () => {
9
- useSignUp: () => import("@tanstack/react-query").UseMutationResult<void, Error, {
9
+ useSignUp: () => import("@tanstack/react-query").UseMutationResult<import("axios").AxiosResponse<any, any>, Error, {
10
10
  params: TUserData;
11
11
  code: string;
12
12
  }, unknown>;
@@ -1 +1 @@
1
- {"version":3,"file":"useAuth.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useAuth.ts"],"names":[],"mappings":"AAoBA,MAAM,MAAM,SAAS,GAAG;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,OAAO;;gBASuB,SAAS;cAAQ,MAAM;;;;;;;;;cA6DvB,MAAM;;;qBAgBQ,MAAM;;;;eAmClB,MAAM;;CAqBlD,CAAC"}
1
+ {"version":3,"file":"useAuth.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useAuth.ts"],"names":[],"mappings":"AAuBA,MAAM,MAAM,SAAS,GAAG;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,OAAO;;gBAUuB,SAAS;cAAQ,MAAM;;;;;;;;;cA6EvB,MAAM;;;qBAgBQ,MAAM;;;;eAmClB,MAAM;;CAqBlD,CAAC"}
@@ -1,3 +1,4 @@
1
+ export declare function acceptTOS(uid: string): Promise<void>;
1
2
  export declare const useTermsOfService: () => {
2
3
  useTermsOfServiceURL: () => import("@tanstack/react-query").UseQueryResult<string, unknown>;
3
4
  useShouldShowTermsOfService: () => import("@tanstack/react-query").UseQueryResult<boolean, unknown>;
@@ -1 +1 @@
1
- {"version":3,"file":"useTermsOfService.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useTermsOfService.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,iBAAiB;;;;CA+E7B,CAAC"}
1
+ {"version":3,"file":"useTermsOfService.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useTermsOfService.ts"],"names":[],"mappings":"AAQA,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAkB1D;AAED,eAAO,MAAM,iBAAiB;;;;CAmE7B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kiosinc/commons-rn",
3
- "version": "0.15.2",
3
+ "version": "0.15.4",
4
4
  "description": "Common Code",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -1,5 +1,5 @@
1
1
  export { useDeactivateAccount } from './useDeactivateAccount';
2
- export { useTermsOfService } from './useTermsOfService';
2
+ export { useTermsOfService, acceptTOS } from './useTermsOfService';
3
3
  export { useAuth } from './useAuth';
4
4
  export { useCustomerQueries } from './useCustomer';
5
5
  export { useCheckCustomer } from './useCheckCustomer';
@@ -13,8 +13,11 @@ import { checkIsRegisteredAPI, signUpAPI } from '../api/authentication';
13
13
  import Config from 'react-native-config';
14
14
  import { analytics } from '../utils/analytics';
15
15
  import { analyticsKeys } from '../constants/analyticsKeys';
16
- import { createCustomer } from '../api/customer';
17
16
  import { queryKeys } from './queryKeys';
17
+ import { useMMKVString } from 'react-native-mmkv';
18
+ import { MMKV_KEYS } from '../constants';
19
+ import { acceptTOS } from './useTermsOfService';
20
+ import { getBusinessData } from './useBusinesses';
18
21
 
19
22
  let confirmationResult: FirebaseAuthTypes.ConfirmationResult;
20
23
 
@@ -31,13 +34,14 @@ export const useAuth = () => {
31
34
  const navigation = useNavigation<NavigationProp<RootStackType>>();
32
35
  const { t } = useTranslation();
33
36
  const queryClient = useQueryClient();
37
+ const [, setBusinessId] = useMMKVString(MMKV_KEYS.BUSINESS_ID);
34
38
 
35
39
  return {
36
40
  useSignUp: () =>
37
41
  useMutation(
38
42
  async ({ params, code }: { params: TUserData; code: string }) => {
39
43
  await confirmationResult.confirm(code);
40
- await signUpAPI(params);
44
+ return signUpAPI(params);
41
45
  },
42
46
  {
43
47
  onError: (error: Error) => {
@@ -46,7 +50,7 @@ export const useAuth = () => {
46
50
  });
47
51
  console.log('error in useSignUp', error);
48
52
  },
49
- onSuccess: async (_, payload) => {
53
+ onSuccess: async (data, payload) => {
50
54
  try {
51
55
  const credential = auth.EmailAuthProvider.credential(
52
56
  payload.params.email,
@@ -65,14 +69,30 @@ export const useAuth = () => {
65
69
  analytics.profile.set(analyticsKeys.app, Config.URL_SCHEME);
66
70
  analytics.track({ eventName: 'sign_up_completed' });
67
71
 
68
- // Business was created by signUpAPIensure SelectBusiness refetches
69
- queryClient.invalidateQueries([queryKeys.BUSINESSES]);
72
+ // Accept TOS on behalf of new user (sets agreementsUpdated correct field)
73
+ await acceptTOS(auth().currentUser.uid);
74
+
75
+ // Write businessId to MMKV so SelectBusiness is skipped for new users
76
+ // POST /business returns { businessId } when a name was provided, {} for gusteau
77
+ const businessId = data?.data?.businessId as string | undefined;
78
+ if (businessId) {
79
+ setBusinessId(businessId);
80
+ } else {
81
+ // Fallback: gusteau signup or API returned empty — fetch from /user/businessData
82
+ const bizResponse = await getBusinessData();
83
+ const firstId = bizResponse?.data?.businesses?.[0]?.id as
84
+ | string
85
+ | undefined;
86
+ if (firstId) setBusinessId(firstId);
87
+ }
70
88
 
71
- // Create new customer in customer collections
72
- await createCustomer({
73
- uid: auth().currentUser.uid,
74
- isAgreementUpdated: true,
75
- });
89
+ // Invalidate businesses so SelectBusiness (when visited manually) is fresh
90
+ queryClient.invalidateQueries([queryKeys.BUSINESSES]);
91
+ // Invalidate TOS gate in case it was already cached as `true`
92
+ queryClient.invalidateQueries([
93
+ auth().currentUser.uid,
94
+ queryKeys.TERMS_AND_CONDITIONS,
95
+ ]);
76
96
  } catch (error: any) {
77
97
  console.log('error', error);
78
98
  // Sign out user if something goes wrong
@@ -3,9 +3,29 @@ import firestore from '@react-native-firebase/firestore';
3
3
  import firebase from '@react-native-firebase/auth';
4
4
  import { getCurrentTimestamp } from '../utils';
5
5
  import { createCustomer } from '../api/customer';
6
- import { analytics } from '../utils';
6
+ import { analytics } from '../utils/analytics';
7
7
  import { DEFAULT_STALE_TIME, queryKeys } from './queryKeys';
8
8
 
9
+ export async function acceptTOS(uid: string): Promise<void> {
10
+ const query = firestore().doc(`customers/${uid}`);
11
+ const customerSnapshot = await query.get();
12
+
13
+ if (!customerSnapshot.exists) {
14
+ await createCustomer({ uid });
15
+ }
16
+
17
+ await query.set(
18
+ {
19
+ uid,
20
+ updated: getCurrentTimestamp(),
21
+ agreementsUpdated: new Date().toISOString(),
22
+ },
23
+ { merge: true }
24
+ );
25
+
26
+ analytics.track({ eventName: 'term_of_service_accepted' });
27
+ }
28
+
9
29
  export const useTermsOfService = () => {
10
30
  const queryClient = useQueryClient();
11
31
  const user = firebase().currentUser;
@@ -62,25 +82,13 @@ export const useTermsOfService = () => {
62
82
  ),
63
83
  useAgreeTermsOfService: () =>
64
84
  useMutation(async () => {
65
- if (!user?.uid || user.isAnonymous) return;
66
- const query = await firestore().doc(`customers/${user.uid}`);
67
- const customerSnapshot = await query.get();
85
+ const currentUser = firebase().currentUser;
86
+ if (!currentUser?.uid || currentUser.isAnonymous) return;
68
87
 
69
- if (!customerSnapshot.exists) {
70
- await createCustomer({ uid: user!.uid });
71
- }
72
- await query.set(
73
- {
74
- uid: user.uid,
75
- updated: getCurrentTimestamp(),
76
- agreementsUpdated: new Date().toISOString(),
77
- },
78
- { merge: true }
79
- );
88
+ await acceptTOS(currentUser.uid);
80
89
 
81
- analytics.track({ eventName: 'term_of_service_accepted' });
82
90
  await queryClient.invalidateQueries([
83
- user.uid,
91
+ currentUser.uid,
84
92
  queryKeys.TERMS_AND_CONDITIONS,
85
93
  ]);
86
94
  }),