@myrjfa/state 2.1.9 → 2.2.0

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 (174) hide show
  1. package/dist/hooks/usePersistentDraftState.d.ts +20 -0
  2. package/dist/hooks/usePersistentDraftState.d.ts.map +1 -0
  3. package/dist/hooks/usePersistentDraftState.js +47 -0
  4. package/dist/index.d.ts +3 -0
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +3 -0
  7. package/dist/lib/actions/actions.d.ts +17 -19
  8. package/dist/lib/actions/actions.d.ts.map +1 -1
  9. package/dist/lib/actions/actions.js +24 -7
  10. package/dist/lib/actions/auth.d.ts +2 -2
  11. package/dist/lib/actions/auth.d.ts.map +1 -1
  12. package/dist/lib/actions/auth.js +9 -0
  13. package/dist/lib/actions/booking.js +2 -2
  14. package/dist/lib/actions/fetcher.js +2 -1
  15. package/dist/lib/actions.d.ts +556 -0
  16. package/dist/lib/actions.d.ts.map +1 -0
  17. package/dist/lib/actions.js +1327 -0
  18. package/dist/lib/adminDashboardActions.d.ts +61 -0
  19. package/dist/lib/adminDashboardActions.d.ts.map +1 -0
  20. package/dist/lib/adminDashboardActions.js +89 -0
  21. package/dist/lib/adventureActions.d.ts +102 -0
  22. package/dist/lib/adventureActions.d.ts.map +1 -0
  23. package/dist/lib/adventureActions.js +202 -0
  24. package/dist/lib/adventureDummyData.d.ts +3 -0
  25. package/dist/lib/adventureDummyData.d.ts.map +1 -0
  26. package/dist/lib/adventureDummyData.js +138 -0
  27. package/dist/lib/adventureFormPage.d.ts +39 -0
  28. package/dist/lib/adventureFormPage.d.ts.map +1 -0
  29. package/dist/lib/adventureFormPage.js +70 -0
  30. package/dist/lib/brandActions.d.ts +83 -0
  31. package/dist/lib/brandActions.d.ts.map +1 -0
  32. package/dist/lib/brandActions.js +28 -0
  33. package/dist/lib/companionActions.d.ts +174 -0
  34. package/dist/lib/companionActions.d.ts.map +1 -0
  35. package/dist/lib/companionActions.js +276 -0
  36. package/dist/lib/companionDummyData.d.ts +99 -0
  37. package/dist/lib/companionDummyData.d.ts.map +1 -0
  38. package/dist/lib/companionDummyData.js +203 -0
  39. package/dist/lib/destinations.d.ts +14 -0
  40. package/dist/lib/destinations.d.ts.map +1 -0
  41. package/dist/lib/destinations.js +203 -0
  42. package/dist/lib/entitySubmission.d.ts +21 -0
  43. package/dist/lib/entitySubmission.d.ts.map +1 -0
  44. package/dist/lib/entitySubmission.js +10 -0
  45. package/dist/lib/eventActions.d.ts +176 -0
  46. package/dist/lib/eventActions.d.ts.map +1 -0
  47. package/dist/lib/eventActions.js +222 -0
  48. package/dist/lib/eventFormPage.d.ts +49 -0
  49. package/dist/lib/eventFormPage.d.ts.map +1 -0
  50. package/dist/lib/eventFormPage.js +84 -0
  51. package/dist/lib/eventsDummyData.d.ts +54 -0
  52. package/dist/lib/eventsDummyData.d.ts.map +1 -0
  53. package/dist/lib/eventsDummyData.js +586 -0
  54. package/dist/lib/guideActions.d.ts +53 -0
  55. package/dist/lib/guideActions.d.ts.map +1 -0
  56. package/dist/lib/guideActions.js +127 -0
  57. package/dist/lib/guideDummyData.d.ts +3 -0
  58. package/dist/lib/guideDummyData.d.ts.map +1 -0
  59. package/dist/lib/guideDummyData.js +66 -0
  60. package/dist/lib/hooks/use-mobile.js +0 -1
  61. package/dist/lib/hooks/useChatSocket.js +0 -1
  62. package/dist/lib/hooks/useHostCalendarSelection.d.ts +51 -0
  63. package/dist/lib/hooks/useHostCalendarSelection.d.ts.map +1 -0
  64. package/dist/lib/hooks/useHostCalendarSelection.js +200 -0
  65. package/dist/lib/hostDashboardActions.d.ts +189 -0
  66. package/dist/lib/hostDashboardActions.d.ts.map +1 -0
  67. package/dist/lib/hostDashboardActions.js +400 -0
  68. package/dist/lib/imageUpload.d.ts +4 -0
  69. package/dist/lib/imageUpload.d.ts.map +1 -0
  70. package/dist/lib/imageUpload.js +36 -0
  71. package/dist/lib/locationActions.d.ts +141 -0
  72. package/dist/lib/locationActions.d.ts.map +1 -0
  73. package/dist/lib/locationActions.js +113 -0
  74. package/dist/lib/models/adventure.d.ts +26 -9
  75. package/dist/lib/models/adventure.d.ts.map +1 -1
  76. package/dist/lib/models/blog.d.ts +2 -2
  77. package/dist/lib/models/discount.d.ts +160 -0
  78. package/dist/lib/models/discount.d.ts.map +1 -0
  79. package/dist/lib/models/discount.js +106 -0
  80. package/dist/lib/models/enquiry.d.ts +34 -0
  81. package/dist/lib/models/enquiry.d.ts.map +1 -0
  82. package/dist/lib/models/enquiry.js +140 -0
  83. package/dist/lib/models/guide.d.ts +4 -3
  84. package/dist/lib/models/guide.d.ts.map +1 -1
  85. package/dist/lib/models/notifications.d.ts +12 -12
  86. package/dist/lib/models/opportunities/freelance.d.ts +76 -76
  87. package/dist/lib/models/opportunities/internship.d.ts +76 -76
  88. package/dist/lib/models/opportunities/job.d.ts +78 -78
  89. package/dist/lib/models/opportunities/opportunity.d.ts +76 -76
  90. package/dist/lib/models/opportunities/volunteerJob.d.ts +76 -76
  91. package/dist/lib/models/package.d.ts +380 -86
  92. package/dist/lib/models/package.d.ts.map +1 -1
  93. package/dist/lib/models/package.js +9 -8
  94. package/dist/lib/models/pricing.d.ts +255 -0
  95. package/dist/lib/models/pricing.d.ts.map +1 -0
  96. package/dist/lib/models/pricing.js +145 -0
  97. package/dist/lib/models/rental.d.ts +12 -7
  98. package/dist/lib/models/rental.d.ts.map +1 -1
  99. package/dist/lib/models/review.d.ts +5 -2
  100. package/dist/lib/models/review.d.ts.map +1 -1
  101. package/dist/lib/models/stay.d.ts +11 -8
  102. package/dist/lib/models/stay.d.ts.map +1 -1
  103. package/dist/lib/models/stay.js +1 -0
  104. package/dist/lib/models/tile.d.ts +11 -7
  105. package/dist/lib/models/tile.d.ts.map +1 -1
  106. package/dist/lib/models/travelPackage.d.ts +943 -0
  107. package/dist/lib/models/travelPackage.d.ts.map +1 -0
  108. package/dist/lib/models/travelPackage.js +326 -0
  109. package/dist/lib/multistepDraft.d.ts +4 -0
  110. package/dist/lib/multistepDraft.d.ts.map +1 -0
  111. package/dist/lib/multistepDraft.js +18 -0
  112. package/dist/lib/opportunityFormData.d.ts +13 -0
  113. package/dist/lib/opportunityFormData.d.ts.map +1 -0
  114. package/dist/lib/opportunityFormData.js +62 -0
  115. package/dist/lib/opportunityFormPage.d.ts +38 -0
  116. package/dist/lib/opportunityFormPage.d.ts.map +1 -0
  117. package/dist/lib/opportunityFormPage.js +33 -0
  118. package/dist/lib/packageActions.d.ts +86 -0
  119. package/dist/lib/packageActions.d.ts.map +1 -0
  120. package/dist/lib/packageActions.js +168 -0
  121. package/dist/lib/packageDummyData.d.ts +3 -0
  122. package/dist/lib/packageDummyData.d.ts.map +1 -0
  123. package/dist/lib/packageDummyData.js +57 -0
  124. package/dist/lib/placeActions.d.ts +192 -0
  125. package/dist/lib/placeActions.d.ts.map +1 -0
  126. package/dist/lib/placeActions.js +57 -0
  127. package/dist/lib/propertyActions.d.ts +17 -0
  128. package/dist/lib/propertyActions.d.ts.map +1 -0
  129. package/dist/lib/propertyActions.js +16 -0
  130. package/dist/lib/rentalActions.d.ts +86 -0
  131. package/dist/lib/rentalActions.d.ts.map +1 -0
  132. package/dist/lib/rentalActions.js +235 -0
  133. package/dist/lib/rentalDummyData.d.ts +3 -0
  134. package/dist/lib/rentalDummyData.d.ts.map +1 -0
  135. package/dist/lib/rentalDummyData.js +402 -0
  136. package/dist/lib/rentalFormPage.d.ts +48 -0
  137. package/dist/lib/rentalFormPage.d.ts.map +1 -0
  138. package/dist/lib/rentalFormPage.js +97 -0
  139. package/dist/lib/roomActions.d.ts +39 -0
  140. package/dist/lib/roomActions.d.ts.map +1 -0
  141. package/dist/lib/roomActions.js +74 -0
  142. package/dist/lib/stayActions.d.ts +97 -0
  143. package/dist/lib/stayActions.d.ts.map +1 -0
  144. package/dist/lib/stayActions.js +138 -0
  145. package/dist/lib/staysDummyData.d.ts +72 -0
  146. package/dist/lib/staysDummyData.d.ts.map +1 -0
  147. package/dist/lib/staysDummyData.js +694 -0
  148. package/dist/lib/storeDummyData.d.ts +33 -0
  149. package/dist/lib/storeDummyData.d.ts.map +1 -0
  150. package/dist/lib/storeDummyData.js +336 -0
  151. package/dist/lib/travelPackageActions.d.ts +102 -0
  152. package/dist/lib/travelPackageActions.d.ts.map +1 -0
  153. package/dist/lib/travelPackageActions.js +487 -0
  154. package/dist/lib/travelPackageFormData.d.ts +20 -0
  155. package/dist/lib/travelPackageFormData.d.ts.map +1 -0
  156. package/dist/lib/travelPackageFormData.js +54 -0
  157. package/dist/lib/travelPackageFormPage.d.ts +32 -0
  158. package/dist/lib/travelPackageFormPage.d.ts.map +1 -0
  159. package/dist/lib/travelPackageFormPage.js +43 -0
  160. package/dist/lib/userAtom.d.ts +32 -32
  161. package/dist/lib/userAtom.d.ts.map +1 -1
  162. package/dist/lib/userAtom.js +17 -1
  163. package/dist/lib/util.d.ts +11 -0
  164. package/dist/lib/util.d.ts.map +1 -0
  165. package/dist/lib/util.js +82 -0
  166. package/dist/lib/utils.d.ts.map +1 -1
  167. package/dist/lib/utils.js +1 -0
  168. package/dist/lib/vehicleData.d.ts +2 -0
  169. package/dist/lib/vehicleData.d.ts.map +1 -0
  170. package/dist/lib/vehicleData.js +181 -0
  171. package/dist/lib/vehicleModels.d.ts +2 -0
  172. package/dist/lib/vehicleModels.d.ts.map +1 -0
  173. package/dist/lib/vehicleModels.js +128 -0
  174. package/package.json +6 -5
@@ -2,7 +2,11 @@ export declare const storageInitializedAtom: import("jotai").PrimitiveAtom<boole
2
2
  init: boolean;
3
3
  };
4
4
  export declare const userAtom: import("jotai").WritableAtom<{
5
+ isActive: boolean;
6
+ country: string;
5
7
  rating: number;
8
+ ratingCount: number;
9
+ reviewCount: number;
6
10
  username: string;
7
11
  firstName: string;
8
12
  lastName: string;
@@ -10,16 +14,13 @@ export declare const userAtom: import("jotai").WritableAtom<{
10
14
  password: string;
11
15
  phoneNumber: string;
12
16
  countryCode: string;
13
- country: string;
14
17
  gender: "male" | "female" | "other";
15
- ratingCount: number;
16
- reviewCount: number;
17
18
  joinedDate: Date;
18
- isActive: boolean;
19
19
  lastActive: Date;
20
20
  verifiedEmail: boolean;
21
21
  verifiedMobile: boolean;
22
- role: "host" | "user" | "admin" | "hr" | "sales";
22
+ role: "host" | "admin" | "user" | "hr" | "sales";
23
+ id?: string | undefined;
23
24
  location?: string | undefined;
24
25
  pinCode?: string | undefined;
25
26
  dob?: Date | undefined;
@@ -40,7 +41,6 @@ export declare const userAtom: import("jotai").WritableAtom<{
40
41
  wishlist?: string[] | undefined;
41
42
  favBlogs?: string[] | undefined;
42
43
  favPackages?: string[] | undefined;
43
- id?: string | undefined;
44
44
  selfie?: string | undefined;
45
45
  selfieAction?: string | undefined;
46
46
  jobCount?: number | undefined;
@@ -50,11 +50,11 @@ export declare const userAtom: import("jotai").WritableAtom<{
50
50
  verifiedBusiness?: "true" | "false" | "inProgress" | undefined;
51
51
  properties?: {
52
52
  type: string;
53
- country: string;
54
53
  name: string;
55
- address: string;
56
54
  city: string;
57
55
  state: string;
56
+ country: string;
57
+ address: string;
58
58
  pinCode?: string | undefined;
59
59
  registrationNumber?: string | undefined;
60
60
  }[] | undefined;
@@ -64,7 +64,11 @@ export declare const userAtom: import("jotai").WritableAtom<{
64
64
  businessApiVerificationStatus?: "pending" | "verified" | "failed" | undefined;
65
65
  businessVerificationDenialReason?: string | undefined;
66
66
  } | null, [{
67
+ isActive: boolean;
68
+ country: string;
67
69
  rating: number;
70
+ ratingCount: number;
71
+ reviewCount: number;
68
72
  username: string;
69
73
  firstName: string;
70
74
  lastName: string;
@@ -72,16 +76,13 @@ export declare const userAtom: import("jotai").WritableAtom<{
72
76
  password: string;
73
77
  phoneNumber: string;
74
78
  countryCode: string;
75
- country: string;
76
79
  gender: "male" | "female" | "other";
77
- ratingCount: number;
78
- reviewCount: number;
79
80
  joinedDate: Date;
80
- isActive: boolean;
81
81
  lastActive: Date;
82
82
  verifiedEmail: boolean;
83
83
  verifiedMobile: boolean;
84
- role: "host" | "user" | "admin" | "hr" | "sales";
84
+ role: "host" | "admin" | "user" | "hr" | "sales";
85
+ id?: string | undefined;
85
86
  location?: string | undefined;
86
87
  pinCode?: string | undefined;
87
88
  dob?: Date | undefined;
@@ -102,7 +103,6 @@ export declare const userAtom: import("jotai").WritableAtom<{
102
103
  wishlist?: string[] | undefined;
103
104
  favBlogs?: string[] | undefined;
104
105
  favPackages?: string[] | undefined;
105
- id?: string | undefined;
106
106
  selfie?: string | undefined;
107
107
  selfieAction?: string | undefined;
108
108
  jobCount?: number | undefined;
@@ -112,11 +112,11 @@ export declare const userAtom: import("jotai").WritableAtom<{
112
112
  verifiedBusiness?: "true" | "false" | "inProgress" | undefined;
113
113
  properties?: {
114
114
  type: string;
115
- country: string;
116
115
  name: string;
117
- address: string;
118
116
  city: string;
119
117
  state: string;
118
+ country: string;
119
+ address: string;
120
120
  pinCode?: string | undefined;
121
121
  registrationNumber?: string | undefined;
122
122
  }[] | undefined;
@@ -126,7 +126,11 @@ export declare const userAtom: import("jotai").WritableAtom<{
126
126
  businessApiVerificationStatus?: "pending" | "verified" | "failed" | undefined;
127
127
  businessVerificationDenialReason?: string | undefined;
128
128
  } | typeof import("jotai/utils").RESET | ((prev: {
129
+ isActive: boolean;
130
+ country: string;
129
131
  rating: number;
132
+ ratingCount: number;
133
+ reviewCount: number;
130
134
  username: string;
131
135
  firstName: string;
132
136
  lastName: string;
@@ -134,16 +138,13 @@ export declare const userAtom: import("jotai").WritableAtom<{
134
138
  password: string;
135
139
  phoneNumber: string;
136
140
  countryCode: string;
137
- country: string;
138
141
  gender: "male" | "female" | "other";
139
- ratingCount: number;
140
- reviewCount: number;
141
142
  joinedDate: Date;
142
- isActive: boolean;
143
143
  lastActive: Date;
144
144
  verifiedEmail: boolean;
145
145
  verifiedMobile: boolean;
146
- role: "host" | "user" | "admin" | "hr" | "sales";
146
+ role: "host" | "admin" | "user" | "hr" | "sales";
147
+ id?: string | undefined;
147
148
  location?: string | undefined;
148
149
  pinCode?: string | undefined;
149
150
  dob?: Date | undefined;
@@ -164,7 +165,6 @@ export declare const userAtom: import("jotai").WritableAtom<{
164
165
  wishlist?: string[] | undefined;
165
166
  favBlogs?: string[] | undefined;
166
167
  favPackages?: string[] | undefined;
167
- id?: string | undefined;
168
168
  selfie?: string | undefined;
169
169
  selfieAction?: string | undefined;
170
170
  jobCount?: number | undefined;
@@ -174,11 +174,11 @@ export declare const userAtom: import("jotai").WritableAtom<{
174
174
  verifiedBusiness?: "true" | "false" | "inProgress" | undefined;
175
175
  properties?: {
176
176
  type: string;
177
- country: string;
178
177
  name: string;
179
- address: string;
180
178
  city: string;
181
179
  state: string;
180
+ country: string;
181
+ address: string;
182
182
  pinCode?: string | undefined;
183
183
  registrationNumber?: string | undefined;
184
184
  }[] | undefined;
@@ -188,7 +188,11 @@ export declare const userAtom: import("jotai").WritableAtom<{
188
188
  businessApiVerificationStatus?: "pending" | "verified" | "failed" | undefined;
189
189
  businessVerificationDenialReason?: string | undefined;
190
190
  } | null) => {
191
+ isActive: boolean;
192
+ country: string;
191
193
  rating: number;
194
+ ratingCount: number;
195
+ reviewCount: number;
192
196
  username: string;
193
197
  firstName: string;
194
198
  lastName: string;
@@ -196,16 +200,13 @@ export declare const userAtom: import("jotai").WritableAtom<{
196
200
  password: string;
197
201
  phoneNumber: string;
198
202
  countryCode: string;
199
- country: string;
200
203
  gender: "male" | "female" | "other";
201
- ratingCount: number;
202
- reviewCount: number;
203
204
  joinedDate: Date;
204
- isActive: boolean;
205
205
  lastActive: Date;
206
206
  verifiedEmail: boolean;
207
207
  verifiedMobile: boolean;
208
- role: "host" | "user" | "admin" | "hr" | "sales";
208
+ role: "host" | "admin" | "user" | "hr" | "sales";
209
+ id?: string | undefined;
209
210
  location?: string | undefined;
210
211
  pinCode?: string | undefined;
211
212
  dob?: Date | undefined;
@@ -226,7 +227,6 @@ export declare const userAtom: import("jotai").WritableAtom<{
226
227
  wishlist?: string[] | undefined;
227
228
  favBlogs?: string[] | undefined;
228
229
  favPackages?: string[] | undefined;
229
- id?: string | undefined;
230
230
  selfie?: string | undefined;
231
231
  selfieAction?: string | undefined;
232
232
  jobCount?: number | undefined;
@@ -236,11 +236,11 @@ export declare const userAtom: import("jotai").WritableAtom<{
236
236
  verifiedBusiness?: "true" | "false" | "inProgress" | undefined;
237
237
  properties?: {
238
238
  type: string;
239
- country: string;
240
239
  name: string;
241
- address: string;
242
240
  city: string;
243
241
  state: string;
242
+ country: string;
243
+ address: string;
244
244
  pinCode?: string | undefined;
245
245
  registrationNumber?: string | undefined;
246
246
  }[] | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"userAtom.d.ts","sourceRoot":"","sources":["../../src/lib/userAtom.ts"],"names":[],"mappings":"AAgEA,eAAO,MAAM,sBAAsB;;CAAuB,CAAC;AAG3D,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6DAQpB,CAAC;AAEF,eAAO,MAAM,cAAc,iKAA6C,CAAC;AAGzE,eAAO,MAAM,eAAe,+BAM1B,CAAC;AAGH,eAAO,MAAM,yBAAyB;;CA+CrC,CAAC;AAGF,wBAAgB,cAAc,SAS7B"}
1
+ {"version":3,"file":"userAtom.d.ts","sourceRoot":"","sources":["../../src/lib/userAtom.ts"],"names":[],"mappings":"AA6EA,eAAO,MAAM,sBAAsB;;CAAuB,CAAC;AAW3D,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6DAQpB,CAAC;AAEF,eAAO,MAAM,cAAc,iKAA6C,CAAC;AAGzE,eAAO,MAAM,eAAe,+BAM1B,CAAC;AAGH,eAAO,MAAM,yBAAyB;;CA+CrC,CAAC;AAGF,wBAAgB,cAAc,SAS7B"}
@@ -8,7 +8,17 @@ const LOGIN_KEY = process.env.NEXT_PUBLIC_LOGIN_KEY;
8
8
  const SECRET_KEY = process.env.NEXT_PUBLIC_RACE;
9
9
  const EXPIRY_DAYS = 90;
10
10
  const EXPIRY_MS = EXPIRY_DAYS * 24 * 60 * 60 * 1000;
11
+ const AUTH_BOOTSTRAP_TIMEOUT_MS = 3000;
11
12
  const store = getDefaultStore();
13
+ function withTimeout(promise, timeoutMs) {
14
+ let timeoutId;
15
+ const timeout = new Promise((_, reject) => {
16
+ timeoutId = setTimeout(() => {
17
+ reject(new Error('Auth session initialization timed out'));
18
+ }, timeoutMs);
19
+ });
20
+ return Promise.race([promise, timeout]).finally(() => clearTimeout(timeoutId));
21
+ }
12
22
  // 🔐 Encryption
13
23
  const encrypt = (data) => CryptoJS.AES.encrypt(JSON.stringify(data), SECRET_KEY).toString();
14
24
  const decrypt = (cipher) => {
@@ -57,6 +67,12 @@ const setWithExpiry = (key, value) => {
57
67
  };
58
68
  // Storage initialization atom - tracks if we've tried to load from storage
59
69
  export const storageInitializedAtom = atom(false);
70
+ storageInitializedAtom.onMount = (setAtom) => {
71
+ const timeout = setTimeout(() => {
72
+ setAtom(true);
73
+ }, AUTH_BOOTSTRAP_TIMEOUT_MS);
74
+ return () => clearTimeout(timeout);
75
+ };
60
76
  // 🍱 Base storage atom (persisted)
61
77
  export const userAtom = atomWithStorage(STORAGE_KEY, null, {
62
78
  getItem: (key) => getWithExpiry(key),
@@ -100,7 +116,7 @@ export const initializeAuthSessionAtom = atom(null, async (get, set) => {
100
116
  // 3. If cache miss: fetch user from backend using session cookie
101
117
  try {
102
118
  // This endpoint can hit DB or another cache as needed
103
- const remoteUser = await getCurrentUser();
119
+ const remoteUser = await withTimeout(getCurrentUser(), AUTH_BOOTSTRAP_TIMEOUT_MS);
104
120
  if (remoteUser) {
105
121
  set(userAtom, remoteUser);
106
122
  set(isLoggedInAtom, true);
@@ -0,0 +1,11 @@
1
+ import { Blog } from "@myrjfa/state/dist/lib/models/blog";
2
+ import { TileProps } from "@myrjfa/state/dist/lib/models/tile";
3
+ import { User } from "@myrjfa/state/dist/lib/models/user";
4
+ import { TravelPackage } from "@myrjfa/state/dist/lib/models/package";
5
+ import { Opportunity } from "@myrjfa/state/dist/lib/models/opportunities/opportunity";
6
+ export declare const expertiseLevels: string[];
7
+ export declare function incompleteMVP(user?: User): string[];
8
+ export declare function convertOpportunityToTileProps(opportunity: Opportunity): TileProps;
9
+ export declare function convertBlogToTileProps(blog: Blog): TileProps;
10
+ export declare function convertTravelPackageToTileProps(travelPackage: TravelPackage): TileProps;
11
+ //# sourceMappingURL=util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/lib/util.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACtE,OAAO,EAAE,WAAW,EAAgB,MAAM,yDAAyD,CAAC;AAIpG,eAAO,MAAM,eAAe,UAA0D,CAAC;AAEvF,wBAAgB,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,MAAM,EAAE,CAanD;AAED,wBAAgB,6BAA6B,CAAC,WAAW,EAAE,WAAW,GAAG,SAAS,CAgBjF;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,CAgB5D;AAED,wBAAgB,+BAA+B,CAAC,aAAa,EAAE,aAAa,GAAG,SAAS,CAuBvF"}
@@ -0,0 +1,82 @@
1
+ import { truncateText } from "@myrjfa/state/dist/lib/utils";
2
+ import { calculatePricingStrategyDisplayUnitPrice, getPricingCurrency, getPricingStrategies } from "@myrjfa/state/dist/lib/models/pricing";
3
+ export const expertiseLevels = ["none", "basic", "intermediate", "advanced", "expert"];
4
+ export function incompleteMVP(user) {
5
+ const incompletions = [];
6
+ if (user) {
7
+ if (!user.verifiedIdCard)
8
+ incompletions.push("Verify your id card");
9
+ if (!user.skills || user.skills.length == 0)
10
+ incompletions.push("Your skills");
11
+ if (!user.userResume)
12
+ incompletions.push("Profile Default Resume");
13
+ if (!user.location)
14
+ incompletions.push("your location");
15
+ if (!user.pinCode)
16
+ incompletions.push("PinCode");
17
+ if (!user.profilePic)
18
+ incompletions.push("Proile Pic");
19
+ }
20
+ else {
21
+ incompletions.push("Please login first");
22
+ }
23
+ return incompletions;
24
+ }
25
+ export function convertOpportunityToTileProps(opportunity) {
26
+ return {
27
+ slug: opportunity.slug || '',
28
+ image: opportunity.images?.[0] || "/images/placeholder.svg",
29
+ title: opportunity.title || '',
30
+ description: opportunity.description || '',
31
+ location: opportunity.city + ', ' + opportunity.state || '',
32
+ date: opportunity.createdAt || new Date(),
33
+ rating: opportunity.rating,
34
+ skills: opportunity.skills || [],
35
+ className: opportunity.categoryId,
36
+ duration: opportunity.minDuration,
37
+ maxDuration: opportunity.maxDuration,
38
+ opportunityType: opportunity.opportunityType || 'volunteer',
39
+ payFrequency: opportunity.compensation?.frequency || undefined,
40
+ };
41
+ }
42
+ export function convertBlogToTileProps(blog) {
43
+ return {
44
+ slug: blog.slug || '',
45
+ image: blog.blogImages?.[0] || "/images/placeholder.svg",
46
+ title: blog.title || '',
47
+ description: truncateText(blog.overview, 150),
48
+ location: '',
49
+ date: blog.createdAt,
50
+ rating: blog.likes || 0,
51
+ skills: [],
52
+ className: '',
53
+ host: blog.author ? {
54
+ name: blog.author,
55
+ image: blog.authorImage
56
+ } : undefined,
57
+ };
58
+ }
59
+ export function convertTravelPackageToTileProps(travelPackage) {
60
+ return {
61
+ slug: travelPackage.slug || '',
62
+ image: travelPackage.packageImages?.[0] || "/images/placeholder.svg",
63
+ title: travelPackage.title || '',
64
+ description: '',
65
+ tileType: "packages",
66
+ location: travelPackage.city + ', ' + travelPackage.state || '',
67
+ date: travelPackage.createdAt instanceof Date ? travelPackage.createdAt : new Date(travelPackage.createdAt),
68
+ rating: travelPackage.rating,
69
+ className: travelPackage.categoryId,
70
+ price: calculatePricingStrategyDisplayUnitPrice(getPricingStrategies(travelPackage)?.[0]),
71
+ currency: getPricingCurrency(travelPackage),
72
+ duration: travelPackage.duration,
73
+ difficultyLevel: travelPackage.difficultyLevel,
74
+ host: travelPackage.host?.name ? {
75
+ image: travelPackage.host?.image ?? "/images/profile_placeholder.webp",
76
+ name: travelPackage.host?.name,
77
+ } : {
78
+ image: travelPackage.hostId?.profilePic ?? "/images/profile_placeholder.webp",
79
+ name: travelPackage.hostId?.username,
80
+ }
81
+ };
82
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,UAAU,EAAQ,MAAM,MAAM,CAAC;AAG7C,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAGrC,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAEnC,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC,eAAO,MAAM,UAAU,UAA2C,CAAC;AAEnE,wBAAgB,EAAE,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,UAEzC;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAGrD;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAGtD;AAED,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,GAAG,SAAS,WAGjD,CAAC;AAEF,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAGtD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAG9D;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAerD;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAWvD;AAGD,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,EAAE,OAAO,MAAM,WACO,CAAC;AAEhE,eAAO,MAAM,QAAQ,GAAI,OAAO,MAAM,WAKrC,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,OAAO,MAAM,EAAE,SAAS,MAAM,EAAE,MAAM,MAAM,WACE,CAAC;AAE3E,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAcjE;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAElE;AAED,wBAAgB,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,CAM5D;AAED,eAAO,MAAM,eAAe,GAAI,MAAM,IAAI,WAczC,CAAC;AAEF,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,SAAM,UAItE;AAGD,wBAAgB,cAAc,CAAC,EAC7B,KAAK,EACL,WAAW,EACX,IAAI,GACL,EAAE;IACD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;;;;;;;;;;;;;;;;;;;;;;;EA8BA;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAaxD;AAED,eAAO,MAAM,eAAe,UAA0D,CAAC;AAEvF,wBAAgB,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,MAAM,EAAE,CAanD"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,UAAU,EAAQ,MAAM,MAAM,CAAC;AAG7C,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAGrC,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAEnC,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC,eAAO,MAAM,UAAU,UAA2C,CAAC;AAEnE,wBAAgB,EAAE,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,UAEzC;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAGrD;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAGtD;AAED,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,GAAG,SAAS,WAGjD,CAAC;AAEF,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAGtD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAG9D;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAgBrD;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAWvD;AAGD,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,EAAE,OAAO,MAAM,WACO,CAAC;AAEhE,eAAO,MAAM,QAAQ,GAAI,OAAO,MAAM,WAKrC,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,OAAO,MAAM,EAAE,SAAS,MAAM,EAAE,MAAM,MAAM,WACE,CAAC;AAE3E,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAcjE;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAElE;AAED,wBAAgB,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,CAM5D;AAED,eAAO,MAAM,eAAe,GAAI,MAAM,IAAI,WAczC,CAAC;AAEF,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,SAAM,UAItE;AAGD,wBAAgB,cAAc,CAAC,EAC7B,KAAK,EACL,WAAW,EACX,IAAI,GACL,EAAE;IACD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;;;;;;;;;;;;;;;;;;;;;;;EA8BA;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAaxD;AAED,eAAO,MAAM,eAAe,UAA0D,CAAC;AAEvF,wBAAgB,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,MAAM,EAAE,CAanD"}
package/dist/lib/utils.js CHANGED
@@ -42,6 +42,7 @@ export function getStatusColor(status) {
42
42
  completed: 'text-purple-500 bg-purple-100',
43
43
  withdrawn: 'text-red-500 bg-red-100',
44
44
  open: 'text-green-500 bg-green-100',
45
+ confirmed: 'text-green-700 bg-green-50 border border-green-200',
45
46
  closed: 'text-red-500 bg-red-100',
46
47
  };
47
48
  return statusColors[status] || 'text-gray-500 bg-gray-100';
@@ -0,0 +1,2 @@
1
+ export declare const VEHICLE_BRANDS_AND_MODELS: Record<string, Record<string, string[]>>;
2
+ //# sourceMappingURL=vehicleData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vehicleData.d.ts","sourceRoot":"","sources":["../../src/lib/vehicleData.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,yBAAyB,EAAE,MAAM,CAC5C,MAAM,EACN,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAqLzB,CAAC"}
@@ -0,0 +1,181 @@
1
+ export const VEHICLE_BRANDS_AND_MODELS = {
2
+ bike: {
3
+ "Royal Enfield": [
4
+ "Classic 350",
5
+ "Meteor 350",
6
+ "Himalayan 411",
7
+ "Himalayan 450",
8
+ "Interceptor 650",
9
+ "Continental GT 650",
10
+ "Hunter 350",
11
+ "Bullet 350",
12
+ "Scram 411",
13
+ "Super Meteor 650",
14
+ "Other",
15
+ ],
16
+ Bajaj: [
17
+ "Pulsar 150",
18
+ "Pulsar 220F",
19
+ "Pulsar RS200",
20
+ "Dominar 400",
21
+ "Dominar 250",
22
+ "Avenger Cruise 220",
23
+ "Avenger Street 160",
24
+ "Other",
25
+ ],
26
+ TVS: [
27
+ "Apache RTR 160",
28
+ "Apache RTR 200",
29
+ "Apache RR 310",
30
+ "Ronin",
31
+ "Raider",
32
+ "Other",
33
+ ],
34
+ KTM: [
35
+ "Duke 200",
36
+ "Duke 250",
37
+ "Duke 390",
38
+ "RC 200",
39
+ "RC 390",
40
+ "Adventure 250",
41
+ "Adventure 390",
42
+ "Other",
43
+ ],
44
+ Honda: [
45
+ "CB Shine",
46
+ "Unicorn",
47
+ "Hornet 2.0",
48
+ "H'ness CB350",
49
+ "CB350RS",
50
+ "CB200X",
51
+ "Other",
52
+ ],
53
+ Yamaha: ["YZF R15", "MT-15", "FZS-FI", "FZ-X", "Other"],
54
+ Hero: [
55
+ "Splendor Plus",
56
+ "Passion Pro",
57
+ "Xpulse 200",
58
+ "Xtreme 160R",
59
+ "Other",
60
+ ],
61
+ Suzuki: ["Gixxer", "Gixxer SF", "V-Strom SX", "Other"],
62
+ Kawasaki: ["Ninja 300", "Ninja 650", "Z900", "Versys 650", "Other"],
63
+ BMW: ["G 310 R", "G 310 GS", "Other"],
64
+ "Jawa/Yezdi": [
65
+ "Jawa 42",
66
+ "Jawa Perak",
67
+ "Yezdi Adventure",
68
+ "Yezdi Scrambler",
69
+ "Yezdi Roadster",
70
+ "Other",
71
+ ],
72
+ Other: ["Other"],
73
+ },
74
+ scooty: {
75
+ Honda: ["Activa 6G", "Activa 125", "Dio", "Grazia", "Other"],
76
+ TVS: ["Jupiter 110", "Jupiter 125", "Ntorq 125", "Scooty Pep+", "Other"],
77
+ Suzuki: ["Access 125", "Burgman Street", "Avenis", "Other"],
78
+ Yamaha: ["Fascino 125", "RayZR 125", "Aerox 155", "Other"],
79
+ Hero: ["Pleasure Plus", "Maestro Edge 125", "Destini 125", "Other"],
80
+ Vespa: ["SXL 125", "VXL 150", "Other"],
81
+ Aprilia: ["SR 160", "SXR 125", "Other"],
82
+ Ather: ["450X", "Rizta", "Other"],
83
+ "Ola Electric": ["S1 Pro", "S1 Air", "S1 X", "Other"],
84
+ Other: ["Other"],
85
+ },
86
+ car: {
87
+ "Maruti Suzuki": [
88
+ "Swift",
89
+ "Baleno",
90
+ "Dzire",
91
+ "Ignis",
92
+ "Celerio",
93
+ "Wagon R",
94
+ "Alto K10",
95
+ "Other",
96
+ ],
97
+ Hyundai: ["i20", "Grand i10 Nios", "Aura", "Verna", "Other"],
98
+ Tata: ["Altroz", "Tiago", "Tigor", "Other"],
99
+ Honda: ["Amaze", "City", "Other"],
100
+ Toyota: ["Glanza", "Camry", "Other"],
101
+ Volkswagen: ["Virtus", "Polo", "Other"],
102
+ Skoda: ["Slavia", "Other"],
103
+ Other: ["Other"],
104
+ },
105
+ suv: {
106
+ Mahindra: [
107
+ "Thar",
108
+ "XUV700",
109
+ "Scorpio-N",
110
+ "Scorpio Classic",
111
+ "Bolero",
112
+ "XUV300",
113
+ "XUV 3XO",
114
+ "Other",
115
+ ],
116
+ Tata: ["Nexon", "Punch", "Harrier", "Safari", "Other"],
117
+ Hyundai: ["Creta", "Venue", "Alcazar", "Tucson", "Other"],
118
+ Kia: ["Seltos", "Sonet", "Carens", "Other"],
119
+ Toyota: [
120
+ "Fortuner",
121
+ "Innova Crysta",
122
+ "Innova Hycross",
123
+ "Urban Cruiser Hyryder",
124
+ "Other",
125
+ ],
126
+ "Maruti Suzuki": [
127
+ "Brezza",
128
+ "Grand Vitara",
129
+ "Jimny",
130
+ "Fronx",
131
+ "Ertiga",
132
+ "XL6",
133
+ "Other",
134
+ ],
135
+ MG: ["Hector", "Astor", "Gloster", "Other"],
136
+ Jeep: ["Compass", "Wrangler", "Other"],
137
+ Other: ["Other"],
138
+ },
139
+ cycle: {
140
+ Firefox: ["Other"],
141
+ "Hero Cycles": ["Other"],
142
+ "B'Twin": ["Other"],
143
+ Hercules: ["Other"],
144
+ Trek: ["Other"],
145
+ Giant: ["Other"],
146
+ Other: ["Other"],
147
+ },
148
+ "electric-bike": {
149
+ Revolt: ["RV400", "Other"],
150
+ Tork: ["Kratos R", "Other"],
151
+ Ultraviolette: ["F77", "Other"],
152
+ Oben: ["Rorr", "Other"],
153
+ Other: ["Other"],
154
+ },
155
+ "electric-car": {
156
+ Tata: ["Nexon EV", "Tiago EV", "Punch EV", "Other"],
157
+ MG: ["ZSEV", "Comet EV", "Other"],
158
+ BYD: ["Atto 3", "Seal", "Other"],
159
+ Hyundai: ["Ioniq 5", "Kona Electric", "Other"],
160
+ Mahindra: ["XUV400", "Other"],
161
+ Other: ["Other"],
162
+ },
163
+ "tempo-traveller": {
164
+ "Force Motors": [
165
+ "Traveller 12 Seater",
166
+ "Traveller 17 Seater",
167
+ "Traveller 26 Seater",
168
+ "Urbania",
169
+ "Other",
170
+ ],
171
+ Other: ["Other"],
172
+ },
173
+ campervan: {
174
+ "Custom Caravan": ["Overlander", "Vanlife Custom", "Other"],
175
+ "Force Motors": ["Traveller Caravan", "Other"],
176
+ Other: ["Other"],
177
+ },
178
+ other: {
179
+ Other: ["Other"],
180
+ },
181
+ };
@@ -0,0 +1,2 @@
1
+ export declare const VEHICLE_BRANDS: Record<string, string[]>;
2
+ //# sourceMappingURL=vehicleModels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vehicleModels.d.ts","sourceRoot":"","sources":["../../src/lib/vehicleModels.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAiInD,CAAC"}