@kiosinc/commons-rn 0.1.55 → 0.1.57

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.
Files changed (42) hide show
  1. package/lib/commonjs/auth/hooks/useTermsOfService.js +66 -0
  2. package/lib/commonjs/auth/hooks/useTermsOfService.js.map +1 -0
  3. package/lib/commonjs/auth/index.js +14 -0
  4. package/lib/commonjs/auth/index.js.map +1 -1
  5. package/lib/commonjs/auth/screens/SignUp.js +8 -1
  6. package/lib/commonjs/auth/screens/SignUp.js.map +1 -1
  7. package/lib/commonjs/auth/screens/TermsOfService.js +133 -0
  8. package/lib/commonjs/auth/screens/TermsOfService.js.map +1 -0
  9. package/lib/commonjs/selectBusiness/queryKeys.js +3 -1
  10. package/lib/commonjs/selectBusiness/queryKeys.js.map +1 -1
  11. package/lib/commonjs/utils/index.js +9 -1
  12. package/lib/commonjs/utils/index.js.map +1 -1
  13. package/lib/module/auth/hooks/useTermsOfService.js +58 -0
  14. package/lib/module/auth/hooks/useTermsOfService.js.map +1 -0
  15. package/lib/module/auth/index.js +2 -0
  16. package/lib/module/auth/index.js.map +1 -1
  17. package/lib/module/auth/screens/SignUp.js +8 -1
  18. package/lib/module/auth/screens/SignUp.js.map +1 -1
  19. package/lib/module/auth/screens/TermsOfService.js +124 -0
  20. package/lib/module/auth/screens/TermsOfService.js.map +1 -0
  21. package/lib/module/selectBusiness/queryKeys.js +3 -1
  22. package/lib/module/selectBusiness/queryKeys.js.map +1 -1
  23. package/lib/module/utils/index.js +6 -0
  24. package/lib/module/utils/index.js.map +1 -1
  25. package/lib/typescript/src/auth/hooks/useTermsOfService.d.ts +6 -0
  26. package/lib/typescript/src/auth/hooks/useTermsOfService.d.ts.map +1 -0
  27. package/lib/typescript/src/auth/index.d.ts +2 -0
  28. package/lib/typescript/src/auth/index.d.ts.map +1 -1
  29. package/lib/typescript/src/auth/screens/SignUp.d.ts.map +1 -1
  30. package/lib/typescript/src/auth/screens/TermsOfService.d.ts +9 -0
  31. package/lib/typescript/src/auth/screens/TermsOfService.d.ts.map +1 -0
  32. package/lib/typescript/src/selectBusiness/queryKeys.d.ts +2 -0
  33. package/lib/typescript/src/selectBusiness/queryKeys.d.ts.map +1 -1
  34. package/lib/typescript/src/utils/index.d.ts +1 -0
  35. package/lib/typescript/src/utils/index.d.ts.map +1 -1
  36. package/package.json +3 -1
  37. package/src/auth/hooks/useTermsOfService.ts +84 -0
  38. package/src/auth/index.ts +2 -0
  39. package/src/auth/screens/SignUp.tsx +5 -1
  40. package/src/auth/screens/TermsOfService.tsx +131 -0
  41. package/src/selectBusiness/queryKeys.ts +2 -0
  42. package/src/utils/index.ts +8 -0
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useTermsOfService = void 0;
7
+ var _reactQuery = require("@tanstack/react-query");
8
+ var _firestore = _interopRequireDefault(require("@react-native-firebase/firestore"));
9
+ var _queryKeys = require("../../selectBusiness/queryKeys");
10
+ var _authentication = require("../providers/authentication");
11
+ var _utils = require("../../utils");
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+ const useTermsOfService = () => {
14
+ const queryClient = (0, _reactQuery.useQueryClient)();
15
+ const {
16
+ user
17
+ } = (0, _authentication.useAuthentication)();
18
+ return {
19
+ useTermsOfServiceURL: () => (0, _reactQuery.useQuery)([_queryKeys.queryKeys.TERMS_AND_CONDITIONS_URL], async () => {
20
+ const system = (await (0, _firestore.default)().doc('_firebase_ext_/agreements').get()).data();
21
+ return system.url;
22
+ }, {
23
+ staleTime: Infinity
24
+ }),
25
+ useShouldShowTermsOfService: () => (0, _reactQuery.useQuery)([user?.uid, _queryKeys.queryKeys.TERMS_AND_CONDITIONS], async () => {
26
+ if (!user?.uid) return false;
27
+ const customerSnapshot = await (0, _firestore.default)().doc(`customers/${user.uid}`).get();
28
+ if (customerSnapshot.exists) {
29
+ const customer = customerSnapshot.data();
30
+ if (!customer.agreementsUpdated) {
31
+ return true;
32
+ } else {
33
+ const system = (await (0, _firestore.default)().doc('_firebase_ext_/agreements').get()).data();
34
+ if (new Date(system.updated) > new Date(customer.agreementsUpdated)) {
35
+ return true;
36
+ }
37
+ }
38
+ } else {
39
+ return true;
40
+ }
41
+ return false;
42
+ }, {
43
+ staleTime: _queryKeys.DEFAULT_STALE_TIME
44
+ }),
45
+ useAgreeTermsOfService: () => (0, _reactQuery.useMutation)(async () => {
46
+ if (!user?.uid) return;
47
+ const query = await (0, _firestore.default)().doc(`customers/${user.uid}`);
48
+ const customerSnapshot = await query.get();
49
+ if (customerSnapshot.exists) {
50
+ await query.update({
51
+ updated: (0, _utils.getCurrentTimestamp)(),
52
+ agreementsUpdated: new Date().toISOString()
53
+ });
54
+ } else {
55
+ await query.set({
56
+ uid: user.uid,
57
+ created: (0, _utils.getCurrentTimestamp)(),
58
+ agreementsUpdated: new Date().toISOString()
59
+ });
60
+ }
61
+ await queryClient.invalidateQueries([user.uid, _queryKeys.queryKeys.TERMS_AND_CONDITIONS]);
62
+ })
63
+ };
64
+ };
65
+ exports.useTermsOfService = useTermsOfService;
66
+ //# sourceMappingURL=useTermsOfService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactQuery","require","_firestore","_interopRequireDefault","_queryKeys","_authentication","_utils","obj","__esModule","default","useTermsOfService","queryClient","useQueryClient","user","useAuthentication","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","useAgreeTermsOfService","useMutation","query","update","getCurrentTimestamp","toISOString","set","created","invalidateQueries","exports"],"sourceRoot":"../../../../src","sources":["auth/hooks/useTermsOfService.ts"],"mappings":"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"}
@@ -9,6 +9,12 @@ Object.defineProperty(exports, "AuthenticationProvider", {
9
9
  return _authentication.AuthenticationProvider;
10
10
  }
11
11
  });
12
+ Object.defineProperty(exports, "TermsOfService", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _TermsOfService.TermsOfService;
16
+ }
17
+ });
12
18
  Object.defineProperty(exports, "changeUser", {
13
19
  enumerable: true,
14
20
  get: function () {
@@ -45,7 +51,15 @@ Object.defineProperty(exports, "useDeactivateAccount", {
45
51
  return _useDeactivateAccount.useDeactivateAccount;
46
52
  }
47
53
  });
54
+ Object.defineProperty(exports, "useTermsOfService", {
55
+ enumerable: true,
56
+ get: function () {
57
+ return _useTermsOfService.useTermsOfService;
58
+ }
59
+ });
48
60
  var _screens = require("./screens");
49
61
  var _authentication = require("./providers/authentication");
50
62
  var _useDeactivateAccount = require("./hooks/useDeactivateAccount");
63
+ var _useTermsOfService = require("./hooks/useTermsOfService");
64
+ var _TermsOfService = require("./screens/TermsOfService");
51
65
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_screens","require","_authentication","_useDeactivateAccount"],"sourceRoot":"../../../src","sources":["auth/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAMA,IAAAE,qBAAA,GAAAF,OAAA"}
1
+ {"version":3,"names":["_screens","require","_authentication","_useDeactivateAccount","_useTermsOfService","_TermsOfService"],"sourceRoot":"../../../src","sources":["auth/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAMA,IAAAE,qBAAA,GAAAF,OAAA;AACA,IAAAG,kBAAA,GAAAH,OAAA;AACA,IAAAI,eAAA,GAAAJ,OAAA"}
@@ -14,6 +14,7 @@ var _validators = require("./validators");
14
14
  var _useAuthentication = require("../hooks/useAuthentication");
15
15
  var _constants = require("../../constants");
16
16
  var _reactNativeConfig = _interopRequireDefault(require("react-native-config"));
17
+ var _useTermsOfService = require("../hooks/useTermsOfService");
17
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18
19
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
19
20
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -29,6 +30,12 @@ const SignUp = () => {
29
30
  mutate: checkRegistration,
30
31
  isLoading: isCheckingIsRegistered
31
32
  } = useIsCheckRegistered();
33
+ const {
34
+ useTermsOfServiceURL
35
+ } = (0, _useTermsOfService.useTermsOfService)();
36
+ const {
37
+ data: url
38
+ } = useTermsOfServiceURL();
32
39
  const {
33
40
  handleSubmit,
34
41
  control,
@@ -164,7 +171,7 @@ const SignUp = () => {
164
171
  }, t('authentication.byContinue'), " "), /*#__PURE__*/_react.default.createElement(_components.LinkButton, {
165
172
  labelStyle: style.linkButton,
166
173
  mode: "text",
167
- onPress: () => _reactNative.Linking.openURL(_constants.TERMS_OF_SERVICE)
174
+ onPress: () => _reactNative.Linking.openURL(url || _constants.TERMS_OF_SERVICE)
168
175
  }, t('authentication.termsAndConditions')), /*#__PURE__*/_react.default.createElement(_components.Text, {
169
176
  variant: "bodyMedium"
170
177
  }, " ", t('authentication.and'), " "), /*#__PURE__*/_react.default.createElement(_components.LinkButton, {
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_react","_interopRequireWildcard","_reactI18next","_reactNative","_reactHookForm","_yup","_validators","_useAuthentication","_constants","_reactNativeConfig","_interopRequireDefault","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","SignUp","selectedCountry","setSelectedCountry","useState","useTranslation","useIsCheckRegistered","useAuthentication","mutate","checkRegistration","isLoading","isCheckingIsRegistered","handleSubmit","control","formState","errors","useForm","criteriaMode","resolver","yupResolver","Config","APP_NAME","signUpValidationSchemaWithoutBusinessName","signUpValidationSchemaWithBusinessName","defaultValues","email","name","displayName","phoneNumber","onSubmit","data","callingCode","replaceAll","createElement","ParentView","px","Header","title","KeyboardAvoidingView","flex","behavior","width","phone","tablet","Controller","render","field","onChange","onBlur","value","TextInput","autoFocus","my","mode","error","message","errorMessage","onChangeText","label","autoCapitalize","keyboardType","autoComplete","PhoneInput","placeholder","onChangePhoneNumber","defaultCountry","onChangeSelectedCountry","Button","loading","mt","onPress","View","flexDirection","flexWrap","pt","Text","variant","LinkButton","labelStyle","style","linkButton","Linking","openURL","TERMS_OF_SERVICE","PRIVACY_POLICY","exports","StyleSheet","create","paddingVertical","marginVertical","marginHorizontal","textDecorationLine"],"sourceRoot":"../../../../src","sources":["auth/screens/SignUp.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["_components","require","_react","_interopRequireWildcard","_reactI18next","_reactNative","_reactHookForm","_yup","_validators","_useAuthentication","_constants","_reactNativeConfig","_interopRequireDefault","_useTermsOfService","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","SignUp","selectedCountry","setSelectedCountry","useState","useTranslation","useIsCheckRegistered","useAuthentication","mutate","checkRegistration","isLoading","isCheckingIsRegistered","useTermsOfServiceURL","useTermsOfService","data","url","handleSubmit","control","formState","errors","useForm","criteriaMode","resolver","yupResolver","Config","APP_NAME","signUpValidationSchemaWithoutBusinessName","signUpValidationSchemaWithBusinessName","defaultValues","email","name","displayName","phoneNumber","onSubmit","callingCode","replaceAll","createElement","ParentView","px","Header","title","KeyboardAvoidingView","flex","behavior","width","phone","tablet","Controller","render","field","onChange","onBlur","value","TextInput","autoFocus","my","mode","error","message","errorMessage","onChangeText","label","autoCapitalize","keyboardType","autoComplete","PhoneInput","placeholder","onChangePhoneNumber","defaultCountry","onChangeSelectedCountry","Button","loading","mt","onPress","View","flexDirection","flexWrap","pt","Text","variant","LinkButton","labelStyle","style","linkButton","Linking","openURL","TERMS_OF_SERVICE","PRIVACY_POLICY","exports","StyleSheet","create","paddingVertical","marginVertical","marginHorizontal","textDecorationLine"],"sourceRoot":"../../../../src","sources":["auth/screens/SignUp.tsx"],"mappings":"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"}
@@ -0,0 +1,133 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.TermsOfService = exports.CloseBottomSheet = void 0;
7
+ var _commonsRn = require("@kiosinc/commons-rn");
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _reactI18next = require("react-i18next");
10
+ var _reactNativePaper = require("react-native-paper");
11
+ var _reactNativeWebview = _interopRequireDefault(require("react-native-webview"));
12
+ var _reactNative = require("react-native");
13
+ var _useTermsOfService = require("../hooks/useTermsOfService");
14
+ var _constants = require("../../constants");
15
+ var _auth = _interopRequireDefault(require("@react-native-firebase/auth"));
16
+ var _reactNativeFastImage = _interopRequireDefault(require("react-native-fast-image"));
17
+ var _reactQuery = require("@tanstack/react-query");
18
+ var _reactNativeMmkv = require("react-native-mmkv");
19
+ var _reactNativeConfig = _interopRequireDefault(require("react-native-config"));
20
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
+ const CloseBottomSheet = ({
22
+ bottomSheetRef
23
+ }) => {
24
+ const [_, setBusinessId] = (0, _reactNativeMmkv.useMMKVString)(_constants.MMKV_KEYS.BUSINESS_ID);
25
+ const {
26
+ t
27
+ } = (0, _reactI18next.useTranslation)();
28
+ const queryClient = (0, _reactQuery.useQueryClient)();
29
+ const handleLogout = () => {
30
+ (0, _auth.default)().signOut().finally(() => {
31
+ _reactNativeConfig.default.APP_NAME !== 'gusteau' && queryClient.clear();
32
+ _reactNativeFastImage.default.clearMemoryCache();
33
+ _reactNativeFastImage.default.clearDiskCache();
34
+ setBusinessId(undefined);
35
+ });
36
+ };
37
+ return /*#__PURE__*/_react.default.createElement(_commonsRn.BottomSheet, {
38
+ close: bottomSheetRef.close,
39
+ pressBehavior: "close",
40
+ ref: bottomSheetRef.ref
41
+ }, /*#__PURE__*/_react.default.createElement(_commonsRn.View, {
42
+ px: "16",
43
+ bg: "background",
44
+ flex: 1,
45
+ my: "16"
46
+ }, /*#__PURE__*/_react.default.createElement(_commonsRn.Text, {
47
+ variant: "titleLarge"
48
+ }, t('home.termsOfServiceModal.title')), /*#__PURE__*/_react.default.createElement(_commonsRn.Text, {
49
+ pt: "16",
50
+ variant: "bodyMedium",
51
+ color: "secondary"
52
+ }, t('home.termsOfServiceModal.description')), /*#__PURE__*/_react.default.createElement(_commonsRn.Button, {
53
+ mode: "contained",
54
+ my: "16",
55
+ onPress: bottomSheetRef.close
56
+ }, t('home.termsOfServiceModal.review')), /*#__PURE__*/_react.default.createElement(_commonsRn.Button, {
57
+ mode: "outlined",
58
+ onPress: handleLogout
59
+ }, t('profile.logout'))));
60
+ };
61
+ exports.CloseBottomSheet = CloseBottomSheet;
62
+ const TermsOfService = () => {
63
+ const {
64
+ useAgreeTermsOfService,
65
+ useTermsOfServiceURL
66
+ } = (0, _useTermsOfService.useTermsOfService)();
67
+ const {
68
+ mutate: agreeTermsOfService,
69
+ isLoading
70
+ } = useAgreeTermsOfService();
71
+ const theme = (0, _reactNativePaper.useTheme)();
72
+ const bottomSheetRef = (0, _commonsRn.useSingleSnapBottomSheetRef)();
73
+ const {
74
+ t
75
+ } = (0, _reactI18next.useTranslation)();
76
+ const {
77
+ data: url
78
+ } = useTermsOfServiceURL();
79
+ return /*#__PURE__*/_react.default.createElement(_commonsRn.ParentView, {
80
+ flex: 1
81
+ }, /*#__PURE__*/_react.default.createElement(_commonsRn.View, {
82
+ flexDirection: "row",
83
+ alignItems: "center"
84
+ }, /*#__PURE__*/_react.default.createElement(_commonsRn.IconButton, {
85
+ iconColor: theme.colors.onSurfaceVariant,
86
+ backgroundColor: "transparent",
87
+ icon: "close",
88
+ onPress: bottomSheetRef.expand
89
+ }), /*#__PURE__*/_react.default.createElement(_commonsRn.Text, {
90
+ variant: "labelLarge"
91
+ }, t('home.termsTitle'))), /*#__PURE__*/_react.default.createElement(_commonsRn.View, {
92
+ style: styles.view,
93
+ mx: "16",
94
+ flex: 1,
95
+ borderWidth: 1,
96
+ borderColor: "onSurfaceDisabled",
97
+ borderRadius: "12",
98
+ padding: "8"
99
+ }, /*#__PURE__*/_react.default.createElement(_reactNativeWebview.default, {
100
+ startInLoadingState: true,
101
+ renderLoading: () => /*#__PURE__*/_react.default.createElement(_commonsRn.View, {
102
+ alignItems: "center",
103
+ bottom: 0,
104
+ justifyContent: "center",
105
+ left: 0,
106
+ position: "absolute",
107
+ right: 0,
108
+ top: 0
109
+ }, /*#__PURE__*/_react.default.createElement(_reactNativePaper.ActivityIndicator, {
110
+ size: "large"
111
+ })),
112
+ javaScriptEnabled: true,
113
+ source: {
114
+ uri: url || _constants.TERMS_OF_SERVICE
115
+ }
116
+ })), /*#__PURE__*/_react.default.createElement(_commonsRn.Button, {
117
+ mx: "16",
118
+ mode: "contained",
119
+ my: "16",
120
+ height: 40,
121
+ onPress: () => agreeTermsOfService(),
122
+ loading: isLoading
123
+ }, t('home.acceptTerms')), /*#__PURE__*/_react.default.createElement(CloseBottomSheet, {
124
+ bottomSheetRef: bottomSheetRef
125
+ }));
126
+ };
127
+ exports.TermsOfService = TermsOfService;
128
+ const styles = _reactNative.StyleSheet.create({
129
+ view: {
130
+ backgroundColor: 'white'
131
+ }
132
+ });
133
+ //# sourceMappingURL=TermsOfService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_commonsRn","require","_react","_interopRequireDefault","_reactI18next","_reactNativePaper","_reactNativeWebview","_reactNative","_useTermsOfService","_constants","_auth","_reactNativeFastImage","_reactQuery","_reactNativeMmkv","_reactNativeConfig","obj","__esModule","default","CloseBottomSheet","bottomSheetRef","_","setBusinessId","useMMKVString","MMKV_KEYS","BUSINESS_ID","t","useTranslation","queryClient","useQueryClient","handleLogout","auth","signOut","finally","Config","APP_NAME","clear","FastImage","clearMemoryCache","clearDiskCache","undefined","createElement","BottomSheet","close","pressBehavior","ref","View","px","bg","flex","my","Text","variant","pt","color","Button","mode","onPress","exports","TermsOfService","useAgreeTermsOfService","useTermsOfServiceURL","useTermsOfService","mutate","agreeTermsOfService","isLoading","theme","useTheme","useSingleSnapBottomSheetRef","data","url","ParentView","flexDirection","alignItems","IconButton","iconColor","colors","onSurfaceVariant","backgroundColor","icon","expand","style","styles","view","mx","borderWidth","borderColor","borderRadius","padding","startInLoadingState","renderLoading","bottom","justifyContent","left","position","right","top","ActivityIndicator","size","javaScriptEnabled","source","uri","TERMS_OF_SERVICE","height","loading","StyleSheet","create"],"sourceRoot":"../../../../src","sources":["auth/screens/TermsOfService.tsx"],"mappings":"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"}
@@ -5,7 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.queryKeys = exports.DEFAULT_STALE_TIME = void 0;
7
7
  const queryKeys = exports.queryKeys = {
8
- BUSINESSES: 'BUSINESSES'
8
+ BUSINESSES: 'BUSINESSES',
9
+ TERMS_AND_CONDITIONS: 'TERMS_AND_CONDITIONS',
10
+ TERMS_AND_CONDITIONS_URL: 'TERMS_AND_CONDITIONS_URL'
9
11
  };
10
12
  const DEFAULT_STALE_TIME = exports.DEFAULT_STALE_TIME = 60 * (60 * 1000); // 60 mins
11
13
  //# sourceMappingURL=queryKeys.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["queryKeys","exports","BUSINESSES","DEFAULT_STALE_TIME"],"sourceRoot":"../../../src","sources":["selectBusiness/queryKeys.ts"],"mappings":";;;;;;AAAO,MAAMA,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAG;EACvBE,UAAU,EAAE;AACd,CAAC;AAEM,MAAMC,kBAAkB,GAAAF,OAAA,CAAAE,kBAAA,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC"}
1
+ {"version":3,"names":["queryKeys","exports","BUSINESSES","TERMS_AND_CONDITIONS","TERMS_AND_CONDITIONS_URL","DEFAULT_STALE_TIME"],"sourceRoot":"../../../src","sources":["selectBusiness/queryKeys.ts"],"mappings":";;;;;;AAAO,MAAMA,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAG;EACvBE,UAAU,EAAE,YAAY;EACxBC,oBAAoB,EAAE,sBAAsB;EAC5CC,wBAAwB,EAAE;AAC5B,CAAC;AAEM,MAAMC,kBAAkB,GAAAJ,OAAA,CAAAI,kBAAA,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC"}
@@ -3,12 +3,20 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.getPercentageFromHeight = void 0;
6
+ exports.getPercentageFromHeight = exports.getCurrentTimestamp = void 0;
7
7
  var _reactNative = require("react-native");
8
8
  var _reactNativeSafeAreaContext = require("react-native-safe-area-context");
9
+ var _firestore = _interopRequireDefault(require("@react-native-firebase/firestore"));
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
11
  const getPercentageFromHeight = height => {
10
12
  const totalHeight = _reactNative.Dimensions.get('window').height - (_reactNativeSafeAreaContext.initialWindowMetrics?.insets?.top ?? 0) - (_reactNativeSafeAreaContext.initialWindowMetrics?.insets?.bottom ?? 0);
11
13
  return Math.ceil(height / totalHeight * 100) + '%';
12
14
  };
13
15
  exports.getPercentageFromHeight = getPercentageFromHeight;
16
+ const getCurrentTimestamp = () => {
17
+ const firestoreTimestamp = _firestore.default.Timestamp.now().toDate();
18
+ const formattedTimestamp = firestoreTimestamp.toISOString();
19
+ return formattedTimestamp;
20
+ };
21
+ exports.getCurrentTimestamp = getCurrentTimestamp;
14
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_reactNativeSafeAreaContext","getPercentageFromHeight","height","totalHeight","Dimensions","get","initialWindowMetrics","insets","top","bottom","Math","ceil","exports"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,2BAAA,GAAAD,OAAA;AAEO,MAAME,uBAAuB,GAAIC,MAAc,IAAa;EACjE,MAAMC,WAAW,GACfC,uBAAU,CAACC,GAAG,CAAC,QAAQ,CAAC,CAACH,MAAM,IAC9BI,gDAAoB,EAAEC,MAAM,EAAEC,GAAG,IAAI,CAAC,CAAC,IACvCF,gDAAoB,EAAEC,MAAM,EAAEE,MAAM,IAAI,CAAC,CAAC;EAE7C,OAAOC,IAAI,CAACC,IAAI,CAAET,MAAM,GAAGC,WAAW,GAAI,GAAG,CAAC,GAAG,GAAG;AACtD,CAAC;AAACS,OAAA,CAAAX,uBAAA,GAAAA,uBAAA"}
1
+ {"version":3,"names":["_reactNative","require","_reactNativeSafeAreaContext","_firestore","_interopRequireDefault","obj","__esModule","default","getPercentageFromHeight","height","totalHeight","Dimensions","get","initialWindowMetrics","insets","top","bottom","Math","ceil","exports","getCurrentTimestamp","firestoreTimestamp","firestore","Timestamp","now","toDate","formattedTimestamp","toISOString"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,2BAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAC,sBAAA,CAAAH,OAAA;AAAyD,SAAAG,uBAAAC,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAElD,MAAMG,uBAAuB,GAAIC,MAAc,IAAa;EACjE,MAAMC,WAAW,GACfC,uBAAU,CAACC,GAAG,CAAC,QAAQ,CAAC,CAACH,MAAM,IAC9BI,gDAAoB,EAAEC,MAAM,EAAEC,GAAG,IAAI,CAAC,CAAC,IACvCF,gDAAoB,EAAEC,MAAM,EAAEE,MAAM,IAAI,CAAC,CAAC;EAE7C,OAAOC,IAAI,CAACC,IAAI,CAAET,MAAM,GAAGC,WAAW,GAAI,GAAG,CAAC,GAAG,GAAG;AACtD,CAAC;AAACS,OAAA,CAAAX,uBAAA,GAAAA,uBAAA;AAEK,MAAMY,mBAAmB,GAAGA,CAAA,KAAM;EACvC,MAAMC,kBAAkB,GAAGC,kBAAS,CAACC,SAAS,CAACC,GAAG,CAAC,CAAC,CAACC,MAAM,CAAC,CAAC;EAC7D,MAAMC,kBAAkB,GAAGL,kBAAkB,CAACM,WAAW,CAAC,CAAC;EAE3D,OAAOD,kBAAkB;AAC3B,CAAC;AAACP,OAAA,CAAAC,mBAAA,GAAAA,mBAAA"}
@@ -0,0 +1,58 @@
1
+ import { useMutation, useQuery, useQueryClient } from '@tanstack/react-query';
2
+ import firestore from '@react-native-firebase/firestore';
3
+ import { DEFAULT_STALE_TIME, queryKeys } from '../../selectBusiness/queryKeys';
4
+ import { useAuthentication } from '../providers/authentication';
5
+ import { getCurrentTimestamp } from '../../utils';
6
+ export const useTermsOfService = () => {
7
+ const queryClient = useQueryClient();
8
+ const {
9
+ user
10
+ } = useAuthentication();
11
+ return {
12
+ useTermsOfServiceURL: () => useQuery([queryKeys.TERMS_AND_CONDITIONS_URL], async () => {
13
+ const system = (await firestore().doc('_firebase_ext_/agreements').get()).data();
14
+ return system.url;
15
+ }, {
16
+ staleTime: Infinity
17
+ }),
18
+ useShouldShowTermsOfService: () => useQuery([user?.uid, queryKeys.TERMS_AND_CONDITIONS], async () => {
19
+ if (!user?.uid) return false;
20
+ const customerSnapshot = await firestore().doc(`customers/${user.uid}`).get();
21
+ if (customerSnapshot.exists) {
22
+ const customer = customerSnapshot.data();
23
+ if (!customer.agreementsUpdated) {
24
+ return true;
25
+ } else {
26
+ const system = (await firestore().doc('_firebase_ext_/agreements').get()).data();
27
+ if (new Date(system.updated) > new Date(customer.agreementsUpdated)) {
28
+ return true;
29
+ }
30
+ }
31
+ } else {
32
+ return true;
33
+ }
34
+ return false;
35
+ }, {
36
+ staleTime: DEFAULT_STALE_TIME
37
+ }),
38
+ useAgreeTermsOfService: () => useMutation(async () => {
39
+ if (!user?.uid) return;
40
+ const query = await firestore().doc(`customers/${user.uid}`);
41
+ const customerSnapshot = await query.get();
42
+ if (customerSnapshot.exists) {
43
+ await query.update({
44
+ updated: getCurrentTimestamp(),
45
+ agreementsUpdated: new Date().toISOString()
46
+ });
47
+ } else {
48
+ await query.set({
49
+ uid: user.uid,
50
+ created: getCurrentTimestamp(),
51
+ agreementsUpdated: new Date().toISOString()
52
+ });
53
+ }
54
+ await queryClient.invalidateQueries([user.uid, queryKeys.TERMS_AND_CONDITIONS]);
55
+ })
56
+ };
57
+ };
58
+ //# sourceMappingURL=useTermsOfService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useMutation","useQuery","useQueryClient","firestore","DEFAULT_STALE_TIME","queryKeys","useAuthentication","getCurrentTimestamp","useTermsOfService","queryClient","user","useTermsOfServiceURL","TERMS_AND_CONDITIONS_URL","system","doc","get","data","url","staleTime","Infinity","useShouldShowTermsOfService","uid","TERMS_AND_CONDITIONS","customerSnapshot","exists","customer","agreementsUpdated","Date","updated","useAgreeTermsOfService","query","update","toISOString","set","created","invalidateQueries"],"sourceRoot":"../../../../src","sources":["auth/hooks/useTermsOfService.ts"],"mappings":"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"}
@@ -2,4 +2,6 @@ export { renderAuthNavigator, renderAppNavigator } from './screens';
2
2
  export { useAuthentication, useAuthenticationDispatch, changeUser } from './providers/authentication';
3
3
  export { AuthenticationProvider } from './providers/authentication';
4
4
  export { useDeactivateAccount } from './hooks/useDeactivateAccount';
5
+ export { useTermsOfService } from './hooks/useTermsOfService';
6
+ export { TermsOfService } from './screens/TermsOfService';
5
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["renderAuthNavigator","renderAppNavigator","useAuthentication","useAuthenticationDispatch","changeUser","AuthenticationProvider","useDeactivateAccount"],"sourceRoot":"../../../src","sources":["auth/index.ts"],"mappings":"AAAA,SAASA,mBAAmB,EAAEC,kBAAkB,QAAQ,WAAW;AACnE,SACEC,iBAAiB,EACjBC,yBAAyB,EACzBC,UAAU,QACL,4BAA4B;AACnC,SAASC,sBAAsB,QAAQ,4BAA4B;AACnE,SAASC,oBAAoB,QAAQ,8BAA8B"}
1
+ {"version":3,"names":["renderAuthNavigator","renderAppNavigator","useAuthentication","useAuthenticationDispatch","changeUser","AuthenticationProvider","useDeactivateAccount","useTermsOfService","TermsOfService"],"sourceRoot":"../../../src","sources":["auth/index.ts"],"mappings":"AAAA,SAASA,mBAAmB,EAAEC,kBAAkB,QAAQ,WAAW;AACnE,SACEC,iBAAiB,EACjBC,yBAAyB,EACzBC,UAAU,QACL,4BAA4B;AACnC,SAASC,sBAAsB,QAAQ,4BAA4B;AACnE,SAASC,oBAAoB,QAAQ,8BAA8B;AACnE,SAASC,iBAAiB,QAAQ,2BAA2B;AAC7D,SAASC,cAAc,QAAQ,0BAA0B"}
@@ -9,6 +9,7 @@ import { useAuthentication } from '../hooks/useAuthentication';
9
9
  import { Linking } from 'react-native';
10
10
  import { PRIVACY_POLICY, TERMS_OF_SERVICE } from '../../constants';
11
11
  import Config from 'react-native-config';
12
+ import { useTermsOfService } from '../hooks/useTermsOfService';
12
13
  export const SignUp = () => {
13
14
  const [selectedCountry, setSelectedCountry] = useState();
14
15
  const {
@@ -21,6 +22,12 @@ export const SignUp = () => {
21
22
  mutate: checkRegistration,
22
23
  isLoading: isCheckingIsRegistered
23
24
  } = useIsCheckRegistered();
25
+ const {
26
+ useTermsOfServiceURL
27
+ } = useTermsOfService();
28
+ const {
29
+ data: url
30
+ } = useTermsOfServiceURL();
24
31
  const {
25
32
  handleSubmit,
26
33
  control,
@@ -156,7 +163,7 @@ export const SignUp = () => {
156
163
  }, t('authentication.byContinue'), " "), /*#__PURE__*/React.createElement(LinkButton, {
157
164
  labelStyle: style.linkButton,
158
165
  mode: "text",
159
- onPress: () => Linking.openURL(TERMS_OF_SERVICE)
166
+ onPress: () => Linking.openURL(url || TERMS_OF_SERVICE)
160
167
  }, t('authentication.termsAndConditions')), /*#__PURE__*/React.createElement(Text, {
161
168
  variant: "bodyMedium"
162
169
  }, " ", t('authentication.and'), " "), /*#__PURE__*/React.createElement(LinkButton, {
@@ -1 +1 @@
1
- {"version":3,"names":["ParentView","Text","View","TextInput","Button","LinkButton","KeyboardAvoidingView","Header","PhoneInput","React","useState","useTranslation","StyleSheet","Controller","useForm","yupResolver","signUpValidationSchemaWithBusinessName","signUpValidationSchemaWithoutBusinessName","useAuthentication","Linking","PRIVACY_POLICY","TERMS_OF_SERVICE","Config","SignUp","selectedCountry","setSelectedCountry","t","useIsCheckRegistered","mutate","checkRegistration","isLoading","isCheckingIsRegistered","handleSubmit","control","formState","errors","criteriaMode","resolver","APP_NAME","defaultValues","email","name","displayName","phoneNumber","onSubmit","data","callingCode","replaceAll","createElement","px","title","flex","behavior","width","phone","tablet","render","field","onChange","onBlur","value","autoFocus","my","mode","error","message","errorMessage","onChangeText","label","autoCapitalize","keyboardType","autoComplete","placeholder","onChangePhoneNumber","defaultCountry","onChangeSelectedCountry","loading","mt","onPress","flexDirection","flexWrap","pt","variant","labelStyle","style","linkButton","openURL","create","paddingVertical","marginVertical","marginHorizontal","textDecorationLine"],"sourceRoot":"../../../../src","sources":["auth/screens/SignUp.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["ParentView","Text","View","TextInput","Button","LinkButton","KeyboardAvoidingView","Header","PhoneInput","React","useState","useTranslation","StyleSheet","Controller","useForm","yupResolver","signUpValidationSchemaWithBusinessName","signUpValidationSchemaWithoutBusinessName","useAuthentication","Linking","PRIVACY_POLICY","TERMS_OF_SERVICE","Config","useTermsOfService","SignUp","selectedCountry","setSelectedCountry","t","useIsCheckRegistered","mutate","checkRegistration","isLoading","isCheckingIsRegistered","useTermsOfServiceURL","data","url","handleSubmit","control","formState","errors","criteriaMode","resolver","APP_NAME","defaultValues","email","name","displayName","phoneNumber","onSubmit","callingCode","replaceAll","createElement","px","title","flex","behavior","width","phone","tablet","render","field","onChange","onBlur","value","autoFocus","my","mode","error","message","errorMessage","onChangeText","label","autoCapitalize","keyboardType","autoComplete","placeholder","onChangePhoneNumber","defaultCountry","onChangeSelectedCountry","loading","mt","onPress","flexDirection","flexWrap","pt","variant","labelStyle","style","linkButton","openURL","create","paddingVertical","marginVertical","marginHorizontal","textDecorationLine"],"sourceRoot":"../../../../src","sources":["auth/screens/SignUp.tsx"],"mappings":"AAAA,SACEA,UAAU,EACVC,IAAI,EACJC,IAAI,EACJC,SAAS,EACTC,MAAM,EACNC,UAAU,EACVC,oBAAoB,EACpBC,MAAM,EACNC,UAAU,QACL,kBAAkB;AACzB,OAAOC,KAAK,IAAIC,QAAQ,QAAQ,OAAO;AACvC,SAASC,cAAc,QAAQ,eAAe;AAC9C,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,UAAU,EAAEC,OAAO,QAAQ,iBAAiB;AACrD,SAASC,WAAW,QAAQ,yBAAyB;AACrD,SACEC,sCAAsC,EACtCC,yCAAyC,QACpC,cAAc;AACrB,SAASC,iBAAiB,QAAQ,4BAA4B;AAC9D,SAASC,OAAO,QAAQ,cAAc;AACtC,SAASC,cAAc,EAAEC,gBAAgB,QAAQ,iBAAiB;AAClE,OAAOC,MAAM,MAAM,qBAAqB;AAExC,SAASC,iBAAiB,QAAQ,4BAA4B;AAS9D,OAAO,MAAMC,MAAM,GAAGA,CAAA,KAAM;EAC1B,MAAM,CAACC,eAAe,EAAEC,kBAAkB,CAAC,GAAGhB,QAAQ,CAAW,CAAC;EAClE,MAAM;IAAEiB;EAAE,CAAC,GAAGhB,cAAc,CAAC,CAAC;EAC9B,MAAM;IAAEiB;EAAqB,CAAC,GAAGV,iBAAiB,CAAC,CAAC;EACpD,MAAM;IAAEW,MAAM,EAAEC,iBAAiB;IAAEC,SAAS,EAAEC;EAAuB,CAAC,GACpEJ,oBAAoB,CAAC,CAAC;EACxB,MAAM;IAAEK;EAAqB,CAAC,GAAGV,iBAAiB,CAAC,CAAC;EACpD,MAAM;IAAEW,IAAI,EAAEC;EAAI,CAAC,GAAGF,oBAAoB,CAAC,CAAC;EAE5C,MAAM;IACJG,YAAY;IACZC,OAAO;IACPC,SAAS,EAAE;MAAEC;IAAO;EACtB,CAAC,GAAGzB,OAAO,CAAY;IACrB0B,YAAY,EAAE,KAAK;IACnBC,QAAQ,EAAE1B,WAAW,CACnBO,MAAM,CAACoB,QAAQ,KAAK,SAAS,GACzBzB,yCAAyC,CAACU,CAAC,CAAC,GAC5CX,sCAAsC,CAACW,CAAC,CAC9C,CAAC;IACDgB,aAAa,EAAE;MACbC,KAAK,EAAE,EAAE;MACTC,IAAI,EAAE,EAAE;MACRC,WAAW,EAAE,EAAE;MACfC,WAAW,EAAE;IACf;EACF,CAAC,CAAC;EAEF,MAAMC,QAAQ,GAAId,IAAe,IAAK;IACpCJ,iBAAiB,CAAC;MAChB,GAAGI,IAAI;MACPa,WAAW,EAAE,CACX,CAACtB,eAAe,EAAEwB,WAAW,IAAI,EAAE,IAAIf,IAAI,CAACa,WAAW,EACvDG,UAAU,CAAC,GAAG,EAAE,EAAE;IACtB,CAAC,CAAC;EACJ,CAAC;EAED,oBACEzC,KAAA,CAAA0C,aAAA,CAACnD,UAAU;IAACoD,EAAE,EAAC;EAAI,gBACjB3C,KAAA,CAAA0C,aAAA,CAAC5C,MAAM;IAAC8C,KAAK,EAAE1B,CAAC,CAAC,mCAAmC;EAAE,CAAE,CAAC,eACzDlB,KAAA,CAAA0C,aAAA,CAAC7C,oBAAoB;IACnBgD,IAAI,EAAE,CAAE;IACRC,QAAQ,EAAC,SAAS;IAClBC,KAAK,EAAE;MAAEC,KAAK,EAAE,MAAM;MAAEC,MAAM,EAAE;IAAI;EAAE,gBAEtCjD,KAAA,CAAA0C,aAAA,CAACtC,UAAU;IACTwB,OAAO,EAAEA,OAAQ;IACjBsB,MAAM,EAAEA,CAAC;MAAEC,KAAK,EAAE;QAAEC,QAAQ;QAAEC,MAAM;QAAEC;MAAM;IAAE,CAAC,KAAK;MAClD,oBACEtD,KAAA,CAAA0C,aAAA,CAAChD,SAAS;QACR6D,SAAS;QACTC,EAAE,EAAC,GAAG;QACNC,IAAI,EAAC,UAAU;QACfC,KAAK,EAAE,CAAC,CAAC5B,MAAM,CAACO,WAAW,EAAEsB,OAAQ;QACrCC,YAAY,EAAE9B,MAAM,CAACO,WAAW,EAAEsB,OAAQ;QAC1CN,MAAM,EAAEA,MAAO;QACfQ,YAAY,EAAET,QAAS;QACvBE,KAAK,EAAEA,KAAM;QACbQ,KAAK,EAAE5C,CAAC,CAAC,4BAA4B;MAAE,CACxC,CAAC;IAEN,CAAE;IACFkB,IAAI,EAAC;EAAa,CACnB,CAAC,EACDvB,MAAM,CAACoB,QAAQ,KAAK,SAAS,iBAC5BjC,KAAA,CAAA0C,aAAA,CAACtC,UAAU;IACTwB,OAAO,EAAEA,OAAQ;IACjBsB,MAAM,EAAEA,CAAC;MAAEC,KAAK,EAAE;QAAEC,QAAQ;QAAEC,MAAM;QAAEC;MAAM;IAAE,CAAC,KAAK;MAClD,oBACEtD,KAAA,CAAA0C,aAAA,CAAChD,SAAS;QACR8D,EAAE,EAAC,GAAG;QACNC,IAAI,EAAC,UAAU;QACfC,KAAK,EAAE,CAAC,CAAC5B,MAAM,CAACM,IAAI,EAAEuB,OAAQ;QAC9BC,YAAY,EAAE9B,MAAM,CAACM,IAAI,EAAEuB,OAAQ;QACnCN,MAAM,EAAEA,MAAO;QACfQ,YAAY,EAAET,QAAS;QACvBE,KAAK,EAAEA,KAAM;QACbQ,KAAK,EAAE5C,CAAC,CAAC,6BAA6B;MAAE,CACzC,CAAC;IAEN,CAAE;IACFkB,IAAI,EAAC;EAAM,CACZ,CACF,eACDpC,KAAA,CAAA0C,aAAA,CAACtC,UAAU;IACTwB,OAAO,EAAEA,OAAQ;IACjBsB,MAAM,EAAEA,CAAC;MAAEC,KAAK,EAAE;QAAEC,QAAQ;QAAEC,MAAM;QAAEC;MAAM;IAAE,CAAC,KAAK;MAClD,oBACEtD,KAAA,CAAA0C,aAAA,CAAChD,SAAS;QACR8D,EAAE,EAAC,GAAG;QACNO,cAAc,EAAC,MAAM;QACrBC,YAAY,EAAC,eAAe;QAC5BP,IAAI,EAAC,UAAU;QACfQ,YAAY,EAAC,OAAO;QACpBP,KAAK,EAAE,CAAC,CAAC5B,MAAM,CAACK,KAAK,EAAEwB,OAAQ;QAC/BC,YAAY,EAAE9B,MAAM,CAACK,KAAK,EAAEwB,OAAQ;QACpCN,MAAM,EAAEA,MAAO;QACfQ,YAAY,EAAET,QAAS;QACvBE,KAAK,EAAEA,KAAM;QACbQ,KAAK,EAAE5C,CAAC,CAAC,sBAAsB;MAAE,CAClC,CAAC;IAEN,CAAE;IACFkB,IAAI,EAAC;EAAO,CACb,CAAC,eACFpC,KAAA,CAAA0C,aAAA,CAACtC,UAAU;IACTwB,OAAO,EAAEA,OAAQ;IACjBsB,MAAM,EAAEA,CAAC;MAAEC,KAAK,EAAE;QAAEC,QAAQ;QAAEC,MAAM;QAAEC;MAAM;IAAE,CAAC,KAAK;MAClD,oBACEtD,KAAA,CAAA0C,aAAA,CAAC3C,UAAU;QACTmE,WAAW,EAAC,cAAc;QAC1Bb,MAAM,EAAEA,MAAO;QACfc,mBAAmB,EAAEf,QAAS;QAC9BE,KAAK,EAAEA,KAAM;QACbc,cAAc,EAAC,IAAI;QACnBR,YAAY,EAAE9B,MAAM,CAACQ,WAAW,EAAEqB,OAAQ;QAC1C3C,eAAe,EAAEA,eAA4B;QAC7CqD,uBAAuB,EAAEpD;MAAmB,CAC7C,CAAC;IAEN,CAAE;IACFmB,IAAI,EAAC;EAAa,CACnB,CAAC,eACFpC,KAAA,CAAA0C,aAAA,CAAC/C,MAAM;IACL2E,OAAO,EAAE/C,sBAAuB;IAChCgD,EAAE,EAAC,IAAI;IACPC,OAAO,EAAE7C,YAAY,CAACY,QAAQ,CAAE;IAChCkB,IAAI,EAAC;EAAW,GAEfvC,CAAC,CAAC,8BAA8B,CAC3B,CAAC,eACTlB,KAAA,CAAA0C,aAAA,CAACjD,IAAI;IAACgF,aAAa,EAAC,KAAK;IAACC,QAAQ,EAAC,MAAM;IAACC,EAAE,EAAC;EAAI,gBAC/C3E,KAAA,CAAA0C,aAAA,CAAClD,IAAI;IAACoF,OAAO,EAAC;EAAY,GAAE1D,CAAC,CAAC,2BAA2B,CAAC,EAAC,GAAO,CAAC,eACnElB,KAAA,CAAA0C,aAAA,CAAC9C,UAAU;IACTiF,UAAU,EAAEC,KAAK,CAACC,UAAW;IAC7BtB,IAAI,EAAC,MAAM;IACXe,OAAO,EAAEA,CAAA,KAAM9D,OAAO,CAACsE,OAAO,CAACtD,GAAG,IAAId,gBAAgB;EAAE,GAEvDM,CAAC,CAAC,mCAAmC,CAC5B,CAAC,eACblB,KAAA,CAAA0C,aAAA,CAAClD,IAAI;IAACoF,OAAO,EAAC;EAAY,GAAC,GAAC,EAAC1D,CAAC,CAAC,oBAAoB,CAAC,EAAC,GAAO,CAAC,eAC7DlB,KAAA,CAAA0C,aAAA,CAAC9C,UAAU;IACTiF,UAAU,EAAEC,KAAK,CAACC,UAAW;IAC7BtB,IAAI,EAAC,MAAM;IACXe,OAAO,EAAEA,CAAA,KAAM9D,OAAO,CAACsE,OAAO,CAACrE,cAAc;EAAE,GAE9CO,CAAC,CAAC,8BAA8B,CACvB,CACR,CACc,CACZ,CAAC;AAEjB,CAAC;AAED,MAAM4D,KAAK,GAAG3E,UAAU,CAAC8E,MAAM,CAAC;EAC9BF,UAAU,EAAE;IACVG,eAAe,EAAE,CAAC;IAClBC,cAAc,EAAE,CAAC;IACjBC,gBAAgB,EAAE,CAAC;IACnBC,kBAAkB,EAAE;EACtB;AACF,CAAC,CAAC"}
@@ -0,0 +1,124 @@
1
+ import { BottomSheet, Button, IconButton, ParentView, Text, View, useSingleSnapBottomSheetRef } from '@kiosinc/commons-rn';
2
+ import React from 'react';
3
+ import { useTranslation } from 'react-i18next';
4
+ import { ActivityIndicator, useTheme } from 'react-native-paper';
5
+ import WebView from 'react-native-webview';
6
+ import { StyleSheet } from 'react-native';
7
+ import { useTermsOfService } from '../hooks/useTermsOfService';
8
+ import { MMKV_KEYS, TERMS_OF_SERVICE } from '../../constants';
9
+ import auth from '@react-native-firebase/auth';
10
+ import FastImage from 'react-native-fast-image';
11
+ import { useQueryClient } from '@tanstack/react-query';
12
+ import { useMMKVString } from 'react-native-mmkv';
13
+ import Config from 'react-native-config';
14
+ export const CloseBottomSheet = ({
15
+ bottomSheetRef
16
+ }) => {
17
+ const [_, setBusinessId] = useMMKVString(MMKV_KEYS.BUSINESS_ID);
18
+ const {
19
+ t
20
+ } = useTranslation();
21
+ const queryClient = useQueryClient();
22
+ const handleLogout = () => {
23
+ auth().signOut().finally(() => {
24
+ Config.APP_NAME !== 'gusteau' && queryClient.clear();
25
+ FastImage.clearMemoryCache();
26
+ FastImage.clearDiskCache();
27
+ setBusinessId(undefined);
28
+ });
29
+ };
30
+ return /*#__PURE__*/React.createElement(BottomSheet, {
31
+ close: bottomSheetRef.close,
32
+ pressBehavior: "close",
33
+ ref: bottomSheetRef.ref
34
+ }, /*#__PURE__*/React.createElement(View, {
35
+ px: "16",
36
+ bg: "background",
37
+ flex: 1,
38
+ my: "16"
39
+ }, /*#__PURE__*/React.createElement(Text, {
40
+ variant: "titleLarge"
41
+ }, t('home.termsOfServiceModal.title')), /*#__PURE__*/React.createElement(Text, {
42
+ pt: "16",
43
+ variant: "bodyMedium",
44
+ color: "secondary"
45
+ }, t('home.termsOfServiceModal.description')), /*#__PURE__*/React.createElement(Button, {
46
+ mode: "contained",
47
+ my: "16",
48
+ onPress: bottomSheetRef.close
49
+ }, t('home.termsOfServiceModal.review')), /*#__PURE__*/React.createElement(Button, {
50
+ mode: "outlined",
51
+ onPress: handleLogout
52
+ }, t('profile.logout'))));
53
+ };
54
+ export const TermsOfService = () => {
55
+ const {
56
+ useAgreeTermsOfService,
57
+ useTermsOfServiceURL
58
+ } = useTermsOfService();
59
+ const {
60
+ mutate: agreeTermsOfService,
61
+ isLoading
62
+ } = useAgreeTermsOfService();
63
+ const theme = useTheme();
64
+ const bottomSheetRef = useSingleSnapBottomSheetRef();
65
+ const {
66
+ t
67
+ } = useTranslation();
68
+ const {
69
+ data: url
70
+ } = useTermsOfServiceURL();
71
+ return /*#__PURE__*/React.createElement(ParentView, {
72
+ flex: 1
73
+ }, /*#__PURE__*/React.createElement(View, {
74
+ flexDirection: "row",
75
+ alignItems: "center"
76
+ }, /*#__PURE__*/React.createElement(IconButton, {
77
+ iconColor: theme.colors.onSurfaceVariant,
78
+ backgroundColor: "transparent",
79
+ icon: "close",
80
+ onPress: bottomSheetRef.expand
81
+ }), /*#__PURE__*/React.createElement(Text, {
82
+ variant: "labelLarge"
83
+ }, t('home.termsTitle'))), /*#__PURE__*/React.createElement(View, {
84
+ style: styles.view,
85
+ mx: "16",
86
+ flex: 1,
87
+ borderWidth: 1,
88
+ borderColor: "onSurfaceDisabled",
89
+ borderRadius: "12",
90
+ padding: "8"
91
+ }, /*#__PURE__*/React.createElement(WebView, {
92
+ startInLoadingState: true,
93
+ renderLoading: () => /*#__PURE__*/React.createElement(View, {
94
+ alignItems: "center",
95
+ bottom: 0,
96
+ justifyContent: "center",
97
+ left: 0,
98
+ position: "absolute",
99
+ right: 0,
100
+ top: 0
101
+ }, /*#__PURE__*/React.createElement(ActivityIndicator, {
102
+ size: "large"
103
+ })),
104
+ javaScriptEnabled: true,
105
+ source: {
106
+ uri: url || TERMS_OF_SERVICE
107
+ }
108
+ })), /*#__PURE__*/React.createElement(Button, {
109
+ mx: "16",
110
+ mode: "contained",
111
+ my: "16",
112
+ height: 40,
113
+ onPress: () => agreeTermsOfService(),
114
+ loading: isLoading
115
+ }, t('home.acceptTerms')), /*#__PURE__*/React.createElement(CloseBottomSheet, {
116
+ bottomSheetRef: bottomSheetRef
117
+ }));
118
+ };
119
+ const styles = StyleSheet.create({
120
+ view: {
121
+ backgroundColor: 'white'
122
+ }
123
+ });
124
+ //# sourceMappingURL=TermsOfService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["BottomSheet","Button","IconButton","ParentView","Text","View","useSingleSnapBottomSheetRef","React","useTranslation","ActivityIndicator","useTheme","WebView","StyleSheet","useTermsOfService","MMKV_KEYS","TERMS_OF_SERVICE","auth","FastImage","useQueryClient","useMMKVString","Config","CloseBottomSheet","bottomSheetRef","_","setBusinessId","BUSINESS_ID","t","queryClient","handleLogout","signOut","finally","APP_NAME","clear","clearMemoryCache","clearDiskCache","undefined","createElement","close","pressBehavior","ref","px","bg","flex","my","variant","pt","color","mode","onPress","TermsOfService","useAgreeTermsOfService","useTermsOfServiceURL","mutate","agreeTermsOfService","isLoading","theme","data","url","flexDirection","alignItems","iconColor","colors","onSurfaceVariant","backgroundColor","icon","expand","style","styles","view","mx","borderWidth","borderColor","borderRadius","padding","startInLoadingState","renderLoading","bottom","justifyContent","left","position","right","top","size","javaScriptEnabled","source","uri","height","loading","create"],"sourceRoot":"../../../../src","sources":["auth/screens/TermsOfService.tsx"],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  export const queryKeys = {
2
- BUSINESSES: 'BUSINESSES'
2
+ BUSINESSES: 'BUSINESSES',
3
+ TERMS_AND_CONDITIONS: 'TERMS_AND_CONDITIONS',
4
+ TERMS_AND_CONDITIONS_URL: 'TERMS_AND_CONDITIONS_URL'
3
5
  };
4
6
  export const DEFAULT_STALE_TIME = 60 * (60 * 1000); // 60 mins
5
7
  //# sourceMappingURL=queryKeys.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["queryKeys","BUSINESSES","DEFAULT_STALE_TIME"],"sourceRoot":"../../../src","sources":["selectBusiness/queryKeys.ts"],"mappings":"AAAA,OAAO,MAAMA,SAAS,GAAG;EACvBC,UAAU,EAAE;AACd,CAAC;AAED,OAAO,MAAMC,kBAAkB,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC"}
1
+ {"version":3,"names":["queryKeys","BUSINESSES","TERMS_AND_CONDITIONS","TERMS_AND_CONDITIONS_URL","DEFAULT_STALE_TIME"],"sourceRoot":"../../../src","sources":["selectBusiness/queryKeys.ts"],"mappings":"AAAA,OAAO,MAAMA,SAAS,GAAG;EACvBC,UAAU,EAAE,YAAY;EACxBC,oBAAoB,EAAE,sBAAsB;EAC5CC,wBAAwB,EAAE;AAC5B,CAAC;AAED,OAAO,MAAMC,kBAAkB,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC"}
@@ -1,7 +1,13 @@
1
1
  import { Dimensions } from 'react-native';
2
2
  import { initialWindowMetrics } from 'react-native-safe-area-context';
3
+ import firestore from '@react-native-firebase/firestore';
3
4
  export const getPercentageFromHeight = height => {
4
5
  const totalHeight = Dimensions.get('window').height - (initialWindowMetrics?.insets?.top ?? 0) - (initialWindowMetrics?.insets?.bottom ?? 0);
5
6
  return Math.ceil(height / totalHeight * 100) + '%';
6
7
  };
8
+ export const getCurrentTimestamp = () => {
9
+ const firestoreTimestamp = firestore.Timestamp.now().toDate();
10
+ const formattedTimestamp = firestoreTimestamp.toISOString();
11
+ return formattedTimestamp;
12
+ };
7
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Dimensions","initialWindowMetrics","getPercentageFromHeight","height","totalHeight","get","insets","top","bottom","Math","ceil"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":"AAAA,SAASA,UAAU,QAAQ,cAAc;AACzC,SAASC,oBAAoB,QAAQ,gCAAgC;AAErE,OAAO,MAAMC,uBAAuB,GAAIC,MAAc,IAAa;EACjE,MAAMC,WAAW,GACfJ,UAAU,CAACK,GAAG,CAAC,QAAQ,CAAC,CAACF,MAAM,IAC9BF,oBAAoB,EAAEK,MAAM,EAAEC,GAAG,IAAI,CAAC,CAAC,IACvCN,oBAAoB,EAAEK,MAAM,EAAEE,MAAM,IAAI,CAAC,CAAC;EAE7C,OAAOC,IAAI,CAACC,IAAI,CAAEP,MAAM,GAAGC,WAAW,GAAI,GAAG,CAAC,GAAG,GAAG;AACtD,CAAC"}
1
+ {"version":3,"names":["Dimensions","initialWindowMetrics","firestore","getPercentageFromHeight","height","totalHeight","get","insets","top","bottom","Math","ceil","getCurrentTimestamp","firestoreTimestamp","Timestamp","now","toDate","formattedTimestamp","toISOString"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":"AAAA,SAASA,UAAU,QAAQ,cAAc;AACzC,SAASC,oBAAoB,QAAQ,gCAAgC;AACrE,OAAOC,SAAS,MAAM,kCAAkC;AAExD,OAAO,MAAMC,uBAAuB,GAAIC,MAAc,IAAa;EACjE,MAAMC,WAAW,GACfL,UAAU,CAACM,GAAG,CAAC,QAAQ,CAAC,CAACF,MAAM,IAC9BH,oBAAoB,EAAEM,MAAM,EAAEC,GAAG,IAAI,CAAC,CAAC,IACvCP,oBAAoB,EAAEM,MAAM,EAAEE,MAAM,IAAI,CAAC,CAAC;EAE7C,OAAOC,IAAI,CAACC,IAAI,CAAEP,MAAM,GAAGC,WAAW,GAAI,GAAG,CAAC,GAAG,GAAG;AACtD,CAAC;AAED,OAAO,MAAMO,mBAAmB,GAAGA,CAAA,KAAM;EACvC,MAAMC,kBAAkB,GAAGX,SAAS,CAACY,SAAS,CAACC,GAAG,CAAC,CAAC,CAACC,MAAM,CAAC,CAAC;EAC7D,MAAMC,kBAAkB,GAAGJ,kBAAkB,CAACK,WAAW,CAAC,CAAC;EAE3D,OAAOD,kBAAkB;AAC3B,CAAC"}
@@ -0,0 +1,6 @@
1
+ export declare const useTermsOfService: () => {
2
+ useTermsOfServiceURL: () => import("@tanstack/react-query").UseQueryResult<string, unknown>;
3
+ useShouldShowTermsOfService: () => import("@tanstack/react-query").UseQueryResult<boolean, unknown>;
4
+ useAgreeTermsOfService: () => import("@tanstack/react-query").UseMutationResult<void, unknown, void, unknown>;
5
+ };
6
+ //# sourceMappingURL=useTermsOfService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTermsOfService.d.ts","sourceRoot":"","sources":["../../../../../src/auth/hooks/useTermsOfService.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,iBAAiB;;;;CA6E7B,CAAC"}
@@ -2,4 +2,6 @@ export { renderAuthNavigator, renderAppNavigator } from './screens';
2
2
  export { useAuthentication, useAuthenticationDispatch, changeUser, } from './providers/authentication';
3
3
  export { AuthenticationProvider } from './providers/authentication';
4
4
  export { useDeactivateAccount } from './hooks/useDeactivateAccount';
5
+ export { useTermsOfService } from './hooks/useTermsOfService';
6
+ export { TermsOfService } from './screens/TermsOfService';
5
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/auth/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AACpE,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,UAAU,GACX,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/auth/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AACpE,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,UAAU,GACX,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SignUp.d.ts","sourceRoot":"","sources":["../../../../../src/auth/screens/SignUp.tsx"],"names":[],"mappings":";AA0BA,MAAM,MAAM,SAAS,GAAG;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,eAAO,MAAM,MAAM,mBAqJlB,CAAC"}
1
+ {"version":3,"file":"SignUp.d.ts","sourceRoot":"","sources":["../../../../../src/auth/screens/SignUp.tsx"],"names":[],"mappings":";AA2BA,MAAM,MAAM,SAAS,GAAG;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,eAAO,MAAM,MAAM,mBAwJlB,CAAC"}
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ import { TSingleSnapBottomSheetRef } from '@kiosinc/commons-rn';
3
+ type CloseBottomSheetProps = {
4
+ bottomSheetRef: TSingleSnapBottomSheetRef;
5
+ };
6
+ export declare const CloseBottomSheet: ({ bottomSheetRef }: CloseBottomSheetProps) => JSX.Element;
7
+ export declare const TermsOfService: () => JSX.Element;
8
+ export {};
9
+ //# sourceMappingURL=TermsOfService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TermsOfService.d.ts","sourceRoot":"","sources":["../../../../../src/auth/screens/TermsOfService.tsx"],"names":[],"mappings":";AAAA,OAAO,EAKL,yBAAyB,EAI1B,MAAM,qBAAqB,CAAC;AAc7B,KAAK,qBAAqB,GAAG;IAC3B,cAAc,EAAE,yBAAyB,CAAC;CAC3C,CAAC;AAEF,eAAO,MAAM,gBAAgB,uBAAwB,qBAAqB,gBAmCzE,CAAC;AAEF,eAAO,MAAM,cAAc,mBA8D1B,CAAC"}
@@ -1,5 +1,7 @@
1
1
  export declare const queryKeys: {
2
2
  BUSINESSES: string;
3
+ TERMS_AND_CONDITIONS: string;
4
+ TERMS_AND_CONDITIONS_URL: string;
3
5
  };
4
6
  export declare const DEFAULT_STALE_TIME: number;
5
7
  //# sourceMappingURL=queryKeys.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"queryKeys.d.ts","sourceRoot":"","sources":["../../../../src/selectBusiness/queryKeys.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS;;CAErB,CAAC;AAEF,eAAO,MAAM,kBAAkB,QAAmB,CAAC"}
1
+ {"version":3,"file":"queryKeys.d.ts","sourceRoot":"","sources":["../../../../src/selectBusiness/queryKeys.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS;;;;CAIrB,CAAC;AAEF,eAAO,MAAM,kBAAkB,QAAmB,CAAC"}
@@ -1,2 +1,3 @@
1
1
  export declare const getPercentageFromHeight: (height: number) => string;
2
+ export declare const getCurrentTimestamp: () => any;
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/index.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,uBAAuB,WAAY,MAAM,KAAG,MAOxD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/index.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,uBAAuB,WAAY,MAAM,KAAG,MAOxD,CAAC;AAEF,eAAO,MAAM,mBAAmB,WAK/B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kiosinc/commons-rn",
3
- "version": "0.1.55",
3
+ "version": "0.1.57",
4
4
  "description": "Common Code",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -183,6 +183,7 @@
183
183
  "dependencies": {
184
184
  "@gorhom/bottom-sheet": "^4.6.1",
185
185
  "@hookform/resolvers": "^3.3.2",
186
+ "@react-native-firebase/firestore": "^19.2.2",
186
187
  "@react-navigation/material-top-tabs": "^6.6.13",
187
188
  "@shopify/restyle": "^2.4.2",
188
189
  "@tanstack/react-query": "^4.32.6",
@@ -199,6 +200,7 @@
199
200
  "react-native-paper": "^5.11.1",
200
201
  "react-native-size-matters": "^0.4.2",
201
202
  "react-native-video": "^5.2.1",
203
+ "react-native-webview": "^13.10.2",
202
204
  "yup": "^1.3.2"
203
205
  }
204
206
  }
@@ -0,0 +1,84 @@
1
+ import { useMutation, useQuery, useQueryClient } from '@tanstack/react-query';
2
+ import firestore from '@react-native-firebase/firestore';
3
+ import { DEFAULT_STALE_TIME, queryKeys } from '../../selectBusiness/queryKeys';
4
+ import { useAuthentication } from '../providers/authentication';
5
+ import { getCurrentTimestamp } from '../../utils';
6
+
7
+ export const useTermsOfService = () => {
8
+ const queryClient = useQueryClient();
9
+ const { user } = useAuthentication();
10
+
11
+ return {
12
+ useTermsOfServiceURL: () =>
13
+ useQuery(
14
+ [queryKeys.TERMS_AND_CONDITIONS_URL],
15
+ async () => {
16
+ const system = (
17
+ await firestore().doc('_firebase_ext_/agreements').get()
18
+ ).data() as { updated: string; url: string };
19
+
20
+ return system.url;
21
+ },
22
+ {
23
+ staleTime: Infinity,
24
+ }
25
+ ),
26
+ useShouldShowTermsOfService: () =>
27
+ useQuery(
28
+ [user?.uid, queryKeys.TERMS_AND_CONDITIONS],
29
+ async () => {
30
+ if (!user?.uid) return false;
31
+ const customerSnapshot = await firestore()
32
+ .doc(`customers/${user.uid}`)
33
+ .get();
34
+
35
+ if (customerSnapshot.exists) {
36
+ const customer = customerSnapshot.data();
37
+
38
+ if (!customer.agreementsUpdated) {
39
+ return true;
40
+ } else {
41
+ const system = (
42
+ await firestore().doc('_firebase_ext_/agreements').get()
43
+ ).data() as { updated: string };
44
+
45
+ if (
46
+ new Date(system.updated) > new Date(customer.agreementsUpdated)
47
+ ) {
48
+ return true;
49
+ }
50
+ }
51
+ } else {
52
+ return true;
53
+ }
54
+ return false;
55
+ },
56
+ {
57
+ staleTime: DEFAULT_STALE_TIME,
58
+ }
59
+ ),
60
+ useAgreeTermsOfService: () =>
61
+ useMutation(async () => {
62
+ if (!user?.uid) return;
63
+ const query = await firestore().doc(`customers/${user.uid}`);
64
+ const customerSnapshot = await query.get();
65
+
66
+ if (customerSnapshot.exists) {
67
+ await query.update({
68
+ updated: getCurrentTimestamp(),
69
+ agreementsUpdated: new Date().toISOString(),
70
+ });
71
+ } else {
72
+ await query.set({
73
+ uid: user.uid,
74
+ created: getCurrentTimestamp(),
75
+ agreementsUpdated: new Date().toISOString(),
76
+ });
77
+ }
78
+ await queryClient.invalidateQueries([
79
+ user.uid,
80
+ queryKeys.TERMS_AND_CONDITIONS,
81
+ ]);
82
+ }),
83
+ };
84
+ };
package/src/auth/index.ts CHANGED
@@ -6,3 +6,5 @@ export {
6
6
  } from './providers/authentication';
7
7
  export { AuthenticationProvider } from './providers/authentication';
8
8
  export { useDeactivateAccount } from './hooks/useDeactivateAccount';
9
+ export { useTermsOfService } from './hooks/useTermsOfService';
10
+ export { TermsOfService } from './screens/TermsOfService';
@@ -23,6 +23,7 @@ import { Linking } from 'react-native';
23
23
  import { PRIVACY_POLICY, TERMS_OF_SERVICE } from '../../constants';
24
24
  import Config from 'react-native-config';
25
25
  import { ICountry } from 'react-native-international-phone-number';
26
+ import { useTermsOfService } from '../hooks/useTermsOfService';
26
27
 
27
28
  export type TUserForm = {
28
29
  displayName: string;
@@ -37,6 +38,9 @@ export const SignUp = () => {
37
38
  const { useIsCheckRegistered } = useAuthentication();
38
39
  const { mutate: checkRegistration, isLoading: isCheckingIsRegistered } =
39
40
  useIsCheckRegistered();
41
+ const { useTermsOfServiceURL } = useTermsOfService();
42
+ const { data: url } = useTermsOfServiceURL();
43
+
40
44
  const {
41
45
  handleSubmit,
42
46
  control,
@@ -164,7 +168,7 @@ export const SignUp = () => {
164
168
  <LinkButton
165
169
  labelStyle={style.linkButton}
166
170
  mode="text"
167
- onPress={() => Linking.openURL(TERMS_OF_SERVICE)}
171
+ onPress={() => Linking.openURL(url || TERMS_OF_SERVICE)}
168
172
  >
169
173
  {t('authentication.termsAndConditions')}
170
174
  </LinkButton>
@@ -0,0 +1,131 @@
1
+ import {
2
+ BottomSheet,
3
+ Button,
4
+ IconButton,
5
+ ParentView,
6
+ TSingleSnapBottomSheetRef,
7
+ Text,
8
+ View,
9
+ useSingleSnapBottomSheetRef,
10
+ } from '@kiosinc/commons-rn';
11
+ import React from 'react';
12
+ import { useTranslation } from 'react-i18next';
13
+ import { ActivityIndicator, useTheme } from 'react-native-paper';
14
+ import WebView from 'react-native-webview';
15
+ import { StyleSheet } from 'react-native';
16
+ import { useTermsOfService } from '../hooks/useTermsOfService';
17
+ import { MMKV_KEYS, TERMS_OF_SERVICE } from '../../constants';
18
+ import auth from '@react-native-firebase/auth';
19
+ import FastImage from 'react-native-fast-image';
20
+ import { useQueryClient } from '@tanstack/react-query';
21
+ import { useMMKVString } from 'react-native-mmkv';
22
+ import Config from 'react-native-config';
23
+
24
+ type CloseBottomSheetProps = {
25
+ bottomSheetRef: TSingleSnapBottomSheetRef;
26
+ };
27
+
28
+ export const CloseBottomSheet = ({ bottomSheetRef }: CloseBottomSheetProps) => {
29
+ const [_, setBusinessId] = useMMKVString(MMKV_KEYS.BUSINESS_ID);
30
+ const { t } = useTranslation();
31
+ const queryClient = useQueryClient();
32
+
33
+ const handleLogout = () => {
34
+ auth()
35
+ .signOut()
36
+ .finally(() => {
37
+ Config.APP_NAME !== 'gusteau' && queryClient.clear();
38
+ FastImage.clearMemoryCache();
39
+ FastImage.clearDiskCache();
40
+ setBusinessId(undefined);
41
+ });
42
+ };
43
+ return (
44
+ <BottomSheet
45
+ close={bottomSheetRef.close}
46
+ pressBehavior="close"
47
+ ref={bottomSheetRef.ref}
48
+ >
49
+ <View px="16" bg="background" flex={1} my="16">
50
+ <Text variant="titleLarge">{t('home.termsOfServiceModal.title')}</Text>
51
+ <Text pt="16" variant="bodyMedium" color="secondary">
52
+ {t('home.termsOfServiceModal.description')}
53
+ </Text>
54
+ <Button mode="contained" my="16" onPress={bottomSheetRef.close}>
55
+ {t('home.termsOfServiceModal.review')}
56
+ </Button>
57
+ <Button mode="outlined" onPress={handleLogout}>
58
+ {t('profile.logout')}
59
+ </Button>
60
+ </View>
61
+ </BottomSheet>
62
+ );
63
+ };
64
+
65
+ export const TermsOfService = () => {
66
+ const { useAgreeTermsOfService, useTermsOfServiceURL } = useTermsOfService();
67
+ const { mutate: agreeTermsOfService, isLoading } = useAgreeTermsOfService();
68
+ const theme = useTheme();
69
+ const bottomSheetRef = useSingleSnapBottomSheetRef();
70
+ const { t } = useTranslation();
71
+ const { data: url } = useTermsOfServiceURL();
72
+
73
+ return (
74
+ <ParentView flex={1}>
75
+ <View flexDirection="row" alignItems="center">
76
+ <IconButton
77
+ iconColor={theme.colors.onSurfaceVariant}
78
+ backgroundColor="transparent"
79
+ icon="close"
80
+ onPress={bottomSheetRef.expand}
81
+ />
82
+ <Text variant="labelLarge">{t('home.termsTitle')}</Text>
83
+ </View>
84
+ <View
85
+ style={styles.view}
86
+ mx="16"
87
+ flex={1}
88
+ borderWidth={1}
89
+ borderColor="onSurfaceDisabled"
90
+ borderRadius="12"
91
+ padding="8"
92
+ >
93
+ <WebView
94
+ startInLoadingState
95
+ renderLoading={() => (
96
+ <View
97
+ alignItems="center"
98
+ bottom={0}
99
+ justifyContent="center"
100
+ left={0}
101
+ position="absolute"
102
+ right={0}
103
+ top={0}
104
+ >
105
+ <ActivityIndicator size="large" />
106
+ </View>
107
+ )}
108
+ javaScriptEnabled={true}
109
+ source={{
110
+ uri: url || TERMS_OF_SERVICE,
111
+ }}
112
+ />
113
+ </View>
114
+ <Button
115
+ mx="16"
116
+ mode="contained"
117
+ my="16"
118
+ height={40}
119
+ onPress={() => agreeTermsOfService()}
120
+ loading={isLoading}
121
+ >
122
+ {t('home.acceptTerms')}
123
+ </Button>
124
+ <CloseBottomSheet bottomSheetRef={bottomSheetRef} />
125
+ </ParentView>
126
+ );
127
+ };
128
+
129
+ const styles = StyleSheet.create({
130
+ view: { backgroundColor: 'white' },
131
+ });
@@ -1,5 +1,7 @@
1
1
  export const queryKeys = {
2
2
  BUSINESSES: 'BUSINESSES',
3
+ TERMS_AND_CONDITIONS: 'TERMS_AND_CONDITIONS',
4
+ TERMS_AND_CONDITIONS_URL: 'TERMS_AND_CONDITIONS_URL',
3
5
  };
4
6
 
5
7
  export const DEFAULT_STALE_TIME = 60 * (60 * 1000); // 60 mins
@@ -1,5 +1,6 @@
1
1
  import { Dimensions } from 'react-native';
2
2
  import { initialWindowMetrics } from 'react-native-safe-area-context';
3
+ import firestore from '@react-native-firebase/firestore';
3
4
 
4
5
  export const getPercentageFromHeight = (height: number): string => {
5
6
  const totalHeight =
@@ -9,3 +10,10 @@ export const getPercentageFromHeight = (height: number): string => {
9
10
 
10
11
  return Math.ceil((height / totalHeight) * 100) + '%';
11
12
  };
13
+
14
+ export const getCurrentTimestamp = () => {
15
+ const firestoreTimestamp = firestore.Timestamp.now().toDate();
16
+ const formattedTimestamp = firestoreTimestamp.toISOString();
17
+
18
+ return formattedTimestamp;
19
+ };