@oxyhq/services 5.17.18 → 5.18.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 (238) hide show
  1. package/lib/commonjs/core/mixins/OxyServices.features.js +372 -0
  2. package/lib/commonjs/core/mixins/OxyServices.features.js.map +1 -0
  3. package/lib/commonjs/core/mixins/index.js +3 -2
  4. package/lib/commonjs/core/mixins/index.js.map +1 -1
  5. package/lib/commonjs/ui/components/GroupedItem.js +11 -1
  6. package/lib/commonjs/ui/components/GroupedItem.js.map +1 -1
  7. package/lib/commonjs/ui/components/SettingRow.js +17 -4
  8. package/lib/commonjs/ui/components/SettingRow.js.map +1 -1
  9. package/lib/commonjs/ui/components/feedback/FormInput.js +72 -0
  10. package/lib/commonjs/ui/components/feedback/FormInput.js.map +1 -0
  11. package/lib/commonjs/ui/components/feedback/ProgressIndicator.js +33 -0
  12. package/lib/commonjs/ui/components/feedback/ProgressIndicator.js.map +1 -0
  13. package/lib/commonjs/ui/components/feedback/constants.js +59 -0
  14. package/lib/commonjs/ui/components/feedback/constants.js.map +1 -0
  15. package/lib/commonjs/ui/components/feedback/feedbackStyles.js +262 -0
  16. package/lib/commonjs/ui/components/feedback/feedbackStyles.js.map +1 -0
  17. package/lib/commonjs/ui/components/feedback/index.js +54 -0
  18. package/lib/commonjs/ui/components/feedback/index.js.map +1 -0
  19. package/lib/commonjs/ui/components/feedback/types.js +6 -0
  20. package/lib/commonjs/ui/components/feedback/types.js.map +1 -0
  21. package/lib/commonjs/ui/components/feedback/useFeedbackForm.js +52 -0
  22. package/lib/commonjs/ui/components/feedback/useFeedbackForm.js.map +1 -0
  23. package/lib/commonjs/ui/components/modals/DeleteAccountModal.js +282 -0
  24. package/lib/commonjs/ui/components/modals/DeleteAccountModal.js.map +1 -0
  25. package/lib/commonjs/ui/components/modals/index.js +14 -0
  26. package/lib/commonjs/ui/components/modals/index.js.map +1 -0
  27. package/lib/commonjs/ui/components/payment/PaymentDetailsStep.js +309 -0
  28. package/lib/commonjs/ui/components/payment/PaymentDetailsStep.js.map +1 -0
  29. package/lib/commonjs/ui/components/payment/PaymentMethodStep.js +79 -0
  30. package/lib/commonjs/ui/components/payment/PaymentMethodStep.js.map +1 -0
  31. package/lib/commonjs/ui/components/payment/PaymentReviewStep.js +108 -0
  32. package/lib/commonjs/ui/components/payment/PaymentReviewStep.js.map +1 -0
  33. package/lib/commonjs/ui/components/payment/PaymentSuccessStep.js +79 -0
  34. package/lib/commonjs/ui/components/payment/PaymentSuccessStep.js.map +1 -0
  35. package/lib/commonjs/ui/components/payment/PaymentSummaryStep.js +176 -0
  36. package/lib/commonjs/ui/components/payment/PaymentSummaryStep.js.map +1 -0
  37. package/lib/commonjs/ui/components/payment/constants.js +53 -0
  38. package/lib/commonjs/ui/components/payment/constants.js.map +1 -0
  39. package/lib/commonjs/ui/components/payment/index.js +80 -0
  40. package/lib/commonjs/ui/components/payment/index.js.map +1 -0
  41. package/lib/commonjs/ui/components/payment/paymentStyles.js +409 -0
  42. package/lib/commonjs/ui/components/payment/paymentStyles.js.map +1 -0
  43. package/lib/commonjs/ui/components/payment/types.js +6 -0
  44. package/lib/commonjs/ui/components/payment/types.js.map +1 -0
  45. package/lib/commonjs/ui/hooks/index.js +26 -0
  46. package/lib/commonjs/ui/hooks/index.js.map +1 -1
  47. package/lib/commonjs/ui/hooks/useAsyncAction.js +95 -0
  48. package/lib/commonjs/ui/hooks/useAsyncAction.js.map +1 -0
  49. package/lib/commonjs/ui/hooks/useSettingToggle.js +126 -0
  50. package/lib/commonjs/ui/hooks/useSettingToggle.js.map +1 -0
  51. package/lib/commonjs/ui/navigation/routes.js +1 -0
  52. package/lib/commonjs/ui/navigation/routes.js.map +1 -1
  53. package/lib/commonjs/ui/screens/AccountCenterScreen.js +4 -2
  54. package/lib/commonjs/ui/screens/AccountCenterScreen.js.map +1 -1
  55. package/lib/commonjs/ui/screens/AccountOverviewScreen.js +33 -30
  56. package/lib/commonjs/ui/screens/AccountOverviewScreen.js.map +1 -1
  57. package/lib/commonjs/ui/screens/FAQScreen.js +315 -0
  58. package/lib/commonjs/ui/screens/FAQScreen.js.map +1 -0
  59. package/lib/commonjs/ui/screens/FeedbackScreen.js +73 -590
  60. package/lib/commonjs/ui/screens/FeedbackScreen.js.map +1 -1
  61. package/lib/commonjs/ui/screens/HelpSupportScreen.js +8 -7
  62. package/lib/commonjs/ui/screens/HelpSupportScreen.js.map +1 -1
  63. package/lib/commonjs/ui/screens/PaymentGatewayScreen.js +67 -1395
  64. package/lib/commonjs/ui/screens/PaymentGatewayScreen.js.map +1 -1
  65. package/lib/commonjs/ui/screens/ProfileScreen.js +13 -5
  66. package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
  67. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js +16 -10
  68. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js.map +1 -1
  69. package/lib/commonjs/ui/screens/karma/KarmaCenterScreen.js +23 -11
  70. package/lib/commonjs/ui/screens/karma/KarmaCenterScreen.js.map +1 -1
  71. package/lib/module/core/mixins/OxyServices.features.js +369 -0
  72. package/lib/module/core/mixins/OxyServices.features.js.map +1 -0
  73. package/lib/module/core/mixins/index.js +3 -2
  74. package/lib/module/core/mixins/index.js.map +1 -1
  75. package/lib/module/ui/components/GroupedItem.js +11 -1
  76. package/lib/module/ui/components/GroupedItem.js.map +1 -1
  77. package/lib/module/ui/components/SettingRow.js +17 -4
  78. package/lib/module/ui/components/SettingRow.js.map +1 -1
  79. package/lib/module/ui/components/feedback/FormInput.js +67 -0
  80. package/lib/module/ui/components/feedback/FormInput.js.map +1 -0
  81. package/lib/module/ui/components/feedback/ProgressIndicator.js +28 -0
  82. package/lib/module/ui/components/feedback/ProgressIndicator.js.map +1 -0
  83. package/lib/module/ui/components/feedback/constants.js +55 -0
  84. package/lib/module/ui/components/feedback/constants.js.map +1 -0
  85. package/lib/module/ui/components/feedback/feedbackStyles.js +257 -0
  86. package/lib/module/ui/components/feedback/feedbackStyles.js.map +1 -0
  87. package/lib/module/ui/components/feedback/index.js +8 -0
  88. package/lib/module/ui/components/feedback/index.js.map +1 -0
  89. package/lib/module/ui/components/feedback/types.js +4 -0
  90. package/lib/module/ui/components/feedback/types.js.map +1 -0
  91. package/lib/module/ui/components/feedback/useFeedbackForm.js +47 -0
  92. package/lib/module/ui/components/feedback/useFeedbackForm.js.map +1 -0
  93. package/lib/module/ui/components/modals/DeleteAccountModal.js +276 -0
  94. package/lib/module/ui/components/modals/DeleteAccountModal.js.map +1 -0
  95. package/lib/module/ui/components/modals/index.js +4 -0
  96. package/lib/module/ui/components/modals/index.js.map +1 -0
  97. package/lib/module/ui/components/payment/PaymentDetailsStep.js +303 -0
  98. package/lib/module/ui/components/payment/PaymentDetailsStep.js.map +1 -0
  99. package/lib/module/ui/components/payment/PaymentMethodStep.js +73 -0
  100. package/lib/module/ui/components/payment/PaymentMethodStep.js.map +1 -0
  101. package/lib/module/ui/components/payment/PaymentReviewStep.js +102 -0
  102. package/lib/module/ui/components/payment/PaymentReviewStep.js.map +1 -0
  103. package/lib/module/ui/components/payment/PaymentSuccessStep.js +73 -0
  104. package/lib/module/ui/components/payment/PaymentSuccessStep.js.map +1 -0
  105. package/lib/module/ui/components/payment/PaymentSummaryStep.js +170 -0
  106. package/lib/module/ui/components/payment/PaymentSummaryStep.js.map +1 -0
  107. package/lib/module/ui/components/payment/constants.js +47 -0
  108. package/lib/module/ui/components/payment/constants.js.map +1 -0
  109. package/lib/module/ui/components/payment/index.js +10 -0
  110. package/lib/module/ui/components/payment/index.js.map +1 -0
  111. package/lib/module/ui/components/payment/paymentStyles.js +404 -0
  112. package/lib/module/ui/components/payment/paymentStyles.js.map +1 -0
  113. package/lib/module/ui/components/payment/types.js +4 -0
  114. package/lib/module/ui/components/payment/types.js.map +1 -0
  115. package/lib/module/ui/hooks/index.js +2 -0
  116. package/lib/module/ui/hooks/index.js.map +1 -1
  117. package/lib/module/ui/hooks/useAsyncAction.js +89 -0
  118. package/lib/module/ui/hooks/useAsyncAction.js.map +1 -0
  119. package/lib/module/ui/hooks/useSettingToggle.js +120 -0
  120. package/lib/module/ui/hooks/useSettingToggle.js.map +1 -0
  121. package/lib/module/ui/navigation/routes.js +1 -0
  122. package/lib/module/ui/navigation/routes.js.map +1 -1
  123. package/lib/module/ui/screens/AccountCenterScreen.js +4 -2
  124. package/lib/module/ui/screens/AccountCenterScreen.js.map +1 -1
  125. package/lib/module/ui/screens/AccountOverviewScreen.js +33 -30
  126. package/lib/module/ui/screens/AccountOverviewScreen.js.map +1 -1
  127. package/lib/module/ui/screens/FAQScreen.js +310 -0
  128. package/lib/module/ui/screens/FAQScreen.js.map +1 -0
  129. package/lib/module/ui/screens/FeedbackScreen.js +64 -581
  130. package/lib/module/ui/screens/FeedbackScreen.js.map +1 -1
  131. package/lib/module/ui/screens/HelpSupportScreen.js +8 -7
  132. package/lib/module/ui/screens/HelpSupportScreen.js.map +1 -1
  133. package/lib/module/ui/screens/PaymentGatewayScreen.js +67 -1397
  134. package/lib/module/ui/screens/PaymentGatewayScreen.js.map +1 -1
  135. package/lib/module/ui/screens/ProfileScreen.js +13 -5
  136. package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
  137. package/lib/module/ui/screens/SavesCollectionsScreen.js +16 -10
  138. package/lib/module/ui/screens/SavesCollectionsScreen.js.map +1 -1
  139. package/lib/module/ui/screens/karma/KarmaCenterScreen.js +23 -11
  140. package/lib/module/ui/screens/karma/KarmaCenterScreen.js.map +1 -1
  141. package/lib/typescript/core/mixins/OxyServices.features.d.ts +229 -0
  142. package/lib/typescript/core/mixins/OxyServices.features.d.ts.map +1 -0
  143. package/lib/typescript/core/mixins/index.d.ts +71 -1
  144. package/lib/typescript/core/mixins/index.d.ts.map +1 -1
  145. package/lib/typescript/ui/components/GroupedItem.d.ts +5 -1
  146. package/lib/typescript/ui/components/GroupedItem.d.ts.map +1 -1
  147. package/lib/typescript/ui/components/SettingRow.d.ts +6 -0
  148. package/lib/typescript/ui/components/SettingRow.d.ts.map +1 -1
  149. package/lib/typescript/ui/components/feedback/FormInput.d.ts +20 -0
  150. package/lib/typescript/ui/components/feedback/FormInput.d.ts.map +1 -0
  151. package/lib/typescript/ui/components/feedback/ProgressIndicator.d.ts +11 -0
  152. package/lib/typescript/ui/components/feedback/ProgressIndicator.d.ts.map +1 -0
  153. package/lib/typescript/ui/components/feedback/constants.d.ts +5 -0
  154. package/lib/typescript/ui/components/feedback/constants.d.ts.map +1 -0
  155. package/lib/typescript/ui/components/feedback/feedbackStyles.d.ts +280 -0
  156. package/lib/typescript/ui/components/feedback/feedbackStyles.d.ts.map +1 -0
  157. package/lib/typescript/ui/components/feedback/index.d.ts +7 -0
  158. package/lib/typescript/ui/components/feedback/index.d.ts.map +1 -0
  159. package/lib/typescript/ui/components/feedback/types.d.ts +46 -0
  160. package/lib/typescript/ui/components/feedback/types.d.ts.map +1 -0
  161. package/lib/typescript/ui/components/feedback/useFeedbackForm.d.ts +9 -0
  162. package/lib/typescript/ui/components/feedback/useFeedbackForm.d.ts.map +1 -0
  163. package/lib/typescript/ui/components/modals/DeleteAccountModal.d.ts +19 -0
  164. package/lib/typescript/ui/components/modals/DeleteAccountModal.d.ts.map +1 -0
  165. package/lib/typescript/ui/components/modals/index.d.ts +2 -0
  166. package/lib/typescript/ui/components/modals/index.d.ts.map +1 -0
  167. package/lib/typescript/ui/components/payment/PaymentDetailsStep.d.ts +21 -0
  168. package/lib/typescript/ui/components/payment/PaymentDetailsStep.d.ts.map +1 -0
  169. package/lib/typescript/ui/components/payment/PaymentMethodStep.d.ts +14 -0
  170. package/lib/typescript/ui/components/payment/PaymentMethodStep.d.ts.map +1 -0
  171. package/lib/typescript/ui/components/payment/PaymentReviewStep.d.ts +16 -0
  172. package/lib/typescript/ui/components/payment/PaymentReviewStep.d.ts.map +1 -0
  173. package/lib/typescript/ui/components/payment/PaymentSuccessStep.d.ts +10 -0
  174. package/lib/typescript/ui/components/payment/PaymentSuccessStep.d.ts.map +1 -0
  175. package/lib/typescript/ui/components/payment/PaymentSummaryStep.d.ts +15 -0
  176. package/lib/typescript/ui/components/payment/PaymentSummaryStep.d.ts.map +1 -0
  177. package/lib/typescript/ui/components/payment/constants.d.ts +7 -0
  178. package/lib/typescript/ui/components/payment/constants.d.ts.map +1 -0
  179. package/lib/typescript/ui/components/payment/index.d.ts +9 -0
  180. package/lib/typescript/ui/components/payment/index.d.ts.map +1 -0
  181. package/lib/typescript/ui/components/payment/paymentStyles.d.ts +396 -0
  182. package/lib/typescript/ui/components/payment/paymentStyles.d.ts.map +1 -0
  183. package/lib/typescript/ui/components/payment/types.d.ts +40 -0
  184. package/lib/typescript/ui/components/payment/types.d.ts.map +1 -0
  185. package/lib/typescript/ui/hooks/index.d.ts +2 -0
  186. package/lib/typescript/ui/hooks/index.d.ts.map +1 -1
  187. package/lib/typescript/ui/hooks/useAsyncAction.d.ts +51 -0
  188. package/lib/typescript/ui/hooks/useAsyncAction.d.ts.map +1 -0
  189. package/lib/typescript/ui/hooks/useSettingToggle.d.ts +55 -0
  190. package/lib/typescript/ui/hooks/useSettingToggle.d.ts.map +1 -0
  191. package/lib/typescript/ui/navigation/routes.d.ts +1 -1
  192. package/lib/typescript/ui/navigation/routes.d.ts.map +1 -1
  193. package/lib/typescript/ui/screens/AccountOverviewScreen.d.ts.map +1 -1
  194. package/lib/typescript/ui/screens/FAQScreen.d.ts +5 -0
  195. package/lib/typescript/ui/screens/FAQScreen.d.ts.map +1 -0
  196. package/lib/typescript/ui/screens/FeedbackScreen.d.ts.map +1 -1
  197. package/lib/typescript/ui/screens/HelpSupportScreen.d.ts.map +1 -1
  198. package/lib/typescript/ui/screens/PaymentGatewayScreen.d.ts +3 -15
  199. package/lib/typescript/ui/screens/PaymentGatewayScreen.d.ts.map +1 -1
  200. package/lib/typescript/ui/screens/ProfileScreen.d.ts.map +1 -1
  201. package/lib/typescript/ui/screens/SavesCollectionsScreen.d.ts.map +1 -1
  202. package/lib/typescript/ui/screens/karma/KarmaCenterScreen.d.ts.map +1 -1
  203. package/package.json +1 -1
  204. package/src/core/mixins/OxyServices.features.ts +428 -0
  205. package/src/core/mixins/index.ts +20 -17
  206. package/src/ui/components/GroupedItem.tsx +19 -1
  207. package/src/ui/components/SettingRow.tsx +26 -4
  208. package/src/ui/components/feedback/FormInput.tsx +84 -0
  209. package/src/ui/components/feedback/ProgressIndicator.tsx +35 -0
  210. package/src/ui/components/feedback/constants.ts +22 -0
  211. package/src/ui/components/feedback/feedbackStyles.ts +247 -0
  212. package/src/ui/components/feedback/index.ts +6 -0
  213. package/src/ui/components/feedback/types.ts +52 -0
  214. package/src/ui/components/feedback/useFeedbackForm.ts +44 -0
  215. package/src/ui/components/modals/DeleteAccountModal.tsx +294 -0
  216. package/src/ui/components/modals/index.ts +1 -0
  217. package/src/ui/components/payment/PaymentDetailsStep.tsx +222 -0
  218. package/src/ui/components/payment/PaymentMethodStep.tsx +89 -0
  219. package/src/ui/components/payment/PaymentReviewStep.tsx +126 -0
  220. package/src/ui/components/payment/PaymentSuccessStep.tsx +71 -0
  221. package/src/ui/components/payment/PaymentSummaryStep.tsx +159 -0
  222. package/src/ui/components/payment/constants.ts +39 -0
  223. package/src/ui/components/payment/index.ts +9 -0
  224. package/src/ui/components/payment/paymentStyles.ts +397 -0
  225. package/src/ui/components/payment/types.ts +45 -0
  226. package/src/ui/hooks/index.ts +3 -1
  227. package/src/ui/hooks/useAsyncAction.ts +129 -0
  228. package/src/ui/hooks/useSettingToggle.ts +147 -0
  229. package/src/ui/navigation/routes.ts +2 -0
  230. package/src/ui/screens/AccountCenterScreen.tsx +2 -2
  231. package/src/ui/screens/AccountOverviewScreen.tsx +35 -37
  232. package/src/ui/screens/FAQScreen.tsx +332 -0
  233. package/src/ui/screens/FeedbackScreen.tsx +91 -626
  234. package/src/ui/screens/HelpSupportScreen.tsx +7 -5
  235. package/src/ui/screens/PaymentGatewayScreen.tsx +96 -1275
  236. package/src/ui/screens/ProfileScreen.tsx +11 -6
  237. package/src/ui/screens/SavesCollectionsScreen.tsx +19 -10
  238. package/src/ui/screens/karma/KarmaCenterScreen.tsx +10 -10
@@ -0,0 +1,369 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * Features Methods Mixin
5
+ *
6
+ * Provides methods for various features:
7
+ * - Feedback submission
8
+ * - Subscription plans
9
+ * - Saves/Collections
10
+ * - User history
11
+ * - FAQ
12
+ * - User stats
13
+ * - Achievements
14
+ */
15
+
16
+ import { CACHE_TIMES } from './mixinHelpers';
17
+
18
+ // Types
19
+
20
+ export function OxyServicesFeaturesMixin(Base) {
21
+ return class extends Base {
22
+ constructor(...args) {
23
+ super(...args);
24
+ }
25
+
26
+ // ==================
27
+ // FEEDBACK METHODS
28
+ // ==================
29
+
30
+ /**
31
+ * Submit user feedback
32
+ */
33
+ async submitFeedback(payload) {
34
+ try {
35
+ return await this.makeRequest('POST', '/api/feedback', payload, {
36
+ cache: false
37
+ });
38
+ } catch (error) {
39
+ throw this.handleError(error);
40
+ }
41
+ }
42
+
43
+ // ==================
44
+ // SUBSCRIPTION METHODS
45
+ // ==================
46
+
47
+ /**
48
+ * Get available subscription plans
49
+ */
50
+ async getSubscriptionPlans() {
51
+ try {
52
+ return await this.makeRequest('GET', '/api/subscriptions/plans', undefined, {
53
+ cache: true,
54
+ cacheTTL: CACHE_TIMES.LONG
55
+ });
56
+ } catch (error) {
57
+ throw this.handleError(error);
58
+ }
59
+ }
60
+
61
+ /**
62
+ * Get individual purchasable features
63
+ */
64
+ async getIndividualFeatures() {
65
+ try {
66
+ return await this.makeRequest('GET', '/api/subscriptions/features', undefined, {
67
+ cache: true,
68
+ cacheTTL: CACHE_TIMES.LONG
69
+ });
70
+ } catch (error) {
71
+ throw this.handleError(error);
72
+ }
73
+ }
74
+
75
+ /**
76
+ * Subscribe to a plan
77
+ */
78
+ async subscribe(planId, paymentMethodId) {
79
+ return this.withAuthRetry(async () => {
80
+ return await this.makeRequest('POST', '/api/subscriptions/subscribe', {
81
+ planId,
82
+ paymentMethodId
83
+ }, {
84
+ cache: false
85
+ });
86
+ }, 'subscribe');
87
+ }
88
+
89
+ /**
90
+ * Subscribe to an individual feature
91
+ */
92
+ async subscribeToFeature(featureId, paymentMethodId) {
93
+ return this.withAuthRetry(async () => {
94
+ return await this.makeRequest('POST', '/api/subscriptions/features/subscribe', {
95
+ featureId,
96
+ paymentMethodId
97
+ }, {
98
+ cache: false
99
+ });
100
+ }, 'subscribeToFeature');
101
+ }
102
+
103
+ /**
104
+ * Cancel subscription
105
+ */
106
+ async cancelSubscription(subscriptionId) {
107
+ return this.withAuthRetry(async () => {
108
+ await this.makeRequest('POST', `/api/subscriptions/${subscriptionId}/cancel`, undefined, {
109
+ cache: false
110
+ });
111
+ }, 'cancelSubscription');
112
+ }
113
+
114
+ /**
115
+ * Reactivate subscription
116
+ */
117
+ async reactivateSubscription(subscriptionId) {
118
+ return this.withAuthRetry(async () => {
119
+ await this.makeRequest('POST', `/api/subscriptions/${subscriptionId}/reactivate`, undefined, {
120
+ cache: false
121
+ });
122
+ }, 'reactivateSubscription');
123
+ }
124
+
125
+ /**
126
+ * Get current user's subscription
127
+ */
128
+ async getCurrentSubscription() {
129
+ return this.withAuthRetry(async () => {
130
+ try {
131
+ return await this.makeRequest('GET', '/api/subscriptions/current', undefined, {
132
+ cache: true,
133
+ cacheTTL: CACHE_TIMES.SHORT
134
+ });
135
+ } catch (error) {
136
+ if (error.status === 404) return null;
137
+ throw error;
138
+ }
139
+ }, 'getCurrentSubscription');
140
+ }
141
+
142
+ // ==================
143
+ // SAVES/COLLECTIONS
144
+ // ==================
145
+
146
+ /**
147
+ * Get user's saved items
148
+ */
149
+ async getSavedItems(userId) {
150
+ return this.withAuthRetry(async () => {
151
+ const endpoint = userId ? `/api/users/${userId}/saves` : '/api/saves';
152
+ return await this.makeRequest('GET', endpoint, undefined, {
153
+ cache: true,
154
+ cacheTTL: CACHE_TIMES.SHORT
155
+ });
156
+ }, 'getSavedItems');
157
+ }
158
+
159
+ /**
160
+ * Get user's collections
161
+ */
162
+ async getCollections(userId) {
163
+ return this.withAuthRetry(async () => {
164
+ const endpoint = userId ? `/api/users/${userId}/collections` : '/api/collections';
165
+ return await this.makeRequest('GET', endpoint, undefined, {
166
+ cache: true,
167
+ cacheTTL: CACHE_TIMES.SHORT
168
+ });
169
+ }, 'getCollections');
170
+ }
171
+
172
+ /**
173
+ * Save an item
174
+ */
175
+ async saveItem(itemId, itemType, collectionId) {
176
+ return this.withAuthRetry(async () => {
177
+ return await this.makeRequest('POST', '/api/saves', {
178
+ itemId,
179
+ itemType,
180
+ collectionId
181
+ }, {
182
+ cache: false
183
+ });
184
+ }, 'saveItem');
185
+ }
186
+
187
+ /**
188
+ * Remove an item from saves
189
+ */
190
+ async removeSavedItem(saveId) {
191
+ return this.withAuthRetry(async () => {
192
+ await this.makeRequest('DELETE', `/api/saves/${saveId}`, undefined, {
193
+ cache: false
194
+ });
195
+ }, 'removeSavedItem');
196
+ }
197
+
198
+ /**
199
+ * Create a collection
200
+ */
201
+ async createCollection(name, description) {
202
+ return this.withAuthRetry(async () => {
203
+ return await this.makeRequest('POST', '/api/collections', {
204
+ name,
205
+ description
206
+ }, {
207
+ cache: false
208
+ });
209
+ }, 'createCollection');
210
+ }
211
+
212
+ /**
213
+ * Delete a collection
214
+ */
215
+ async deleteCollection(collectionId) {
216
+ return this.withAuthRetry(async () => {
217
+ await this.makeRequest('DELETE', `/api/collections/${collectionId}`, undefined, {
218
+ cache: false
219
+ });
220
+ }, 'deleteCollection');
221
+ }
222
+
223
+ // ==================
224
+ // USER STATS
225
+ // ==================
226
+
227
+ /**
228
+ * Get user statistics
229
+ */
230
+ async getUserStats(userId) {
231
+ try {
232
+ return await this.makeRequest('GET', `/api/users/${userId}/stats`, undefined, {
233
+ cache: true,
234
+ cacheTTL: CACHE_TIMES.MEDIUM
235
+ });
236
+ } catch (error) {
237
+ throw this.handleError(error);
238
+ }
239
+ }
240
+
241
+ // ==================
242
+ // HISTORY
243
+ // ==================
244
+
245
+ /**
246
+ * Get user history
247
+ */
248
+ async getUserHistory(userId, limit, offset) {
249
+ return this.withAuthRetry(async () => {
250
+ const params = {};
251
+ if (limit) params.limit = limit;
252
+ if (offset) params.offset = offset;
253
+ const endpoint = userId ? `/api/users/${userId}/history` : '/api/history';
254
+ return await this.makeRequest('GET', endpoint, params, {
255
+ cache: true,
256
+ cacheTTL: CACHE_TIMES.SHORT
257
+ });
258
+ }, 'getUserHistory');
259
+ }
260
+
261
+ /**
262
+ * Clear user history
263
+ */
264
+ async clearUserHistory() {
265
+ return this.withAuthRetry(async () => {
266
+ await this.makeRequest('DELETE', '/api/history', undefined, {
267
+ cache: false
268
+ });
269
+ }, 'clearUserHistory');
270
+ }
271
+
272
+ /**
273
+ * Delete a history item
274
+ */
275
+ async deleteHistoryItem(itemId) {
276
+ return this.withAuthRetry(async () => {
277
+ await this.makeRequest('DELETE', `/api/history/${itemId}`, undefined, {
278
+ cache: false
279
+ });
280
+ }, 'deleteHistoryItem');
281
+ }
282
+
283
+ // ==================
284
+ // FAQ
285
+ // ==================
286
+
287
+ /**
288
+ * Get FAQs
289
+ */
290
+ async getFAQs(category) {
291
+ try {
292
+ const params = category ? {
293
+ category
294
+ } : undefined;
295
+ return await this.makeRequest('GET', '/api/faqs', params, {
296
+ cache: true,
297
+ cacheTTL: CACHE_TIMES.LONG
298
+ });
299
+ } catch (error) {
300
+ throw this.handleError(error);
301
+ }
302
+ }
303
+
304
+ /**
305
+ * Search FAQs
306
+ */
307
+ async searchFAQs(query) {
308
+ try {
309
+ return await this.makeRequest('GET', '/api/faqs/search', {
310
+ query
311
+ }, {
312
+ cache: true,
313
+ cacheTTL: CACHE_TIMES.MEDIUM
314
+ });
315
+ } catch (error) {
316
+ throw this.handleError(error);
317
+ }
318
+ }
319
+
320
+ // ==================
321
+ // ACHIEVEMENTS
322
+ // ==================
323
+
324
+ /**
325
+ * Get user achievements
326
+ */
327
+ async getUserAchievements(userId) {
328
+ return this.withAuthRetry(async () => {
329
+ const endpoint = userId ? `/api/users/${userId}/achievements` : '/api/achievements';
330
+ return await this.makeRequest('GET', endpoint, undefined, {
331
+ cache: true,
332
+ cacheTTL: CACHE_TIMES.MEDIUM
333
+ });
334
+ }, 'getUserAchievements');
335
+ }
336
+
337
+ /**
338
+ * Get all available achievements
339
+ */
340
+ async getAllAchievements() {
341
+ try {
342
+ return await this.makeRequest('GET', '/api/achievements/all', undefined, {
343
+ cache: true,
344
+ cacheTTL: CACHE_TIMES.LONG
345
+ });
346
+ } catch (error) {
347
+ throw this.handleError(error);
348
+ }
349
+ }
350
+
351
+ // ==================
352
+ // ACCOUNT
353
+ // ==================
354
+
355
+ /**
356
+ * Delete user account (requires password confirmation)
357
+ */
358
+ async deleteAccount(password) {
359
+ return this.withAuthRetry(async () => {
360
+ await this.makeRequest('DELETE', '/api/account', {
361
+ password
362
+ }, {
363
+ cache: false
364
+ });
365
+ }, 'deleteAccount');
366
+ }
367
+ };
368
+ }
369
+ //# sourceMappingURL=OxyServices.features.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CACHE_TIMES","OxyServicesFeaturesMixin","Base","constructor","args","submitFeedback","payload","makeRequest","cache","error","handleError","getSubscriptionPlans","undefined","cacheTTL","LONG","getIndividualFeatures","subscribe","planId","paymentMethodId","withAuthRetry","subscribeToFeature","featureId","cancelSubscription","subscriptionId","reactivateSubscription","getCurrentSubscription","SHORT","status","getSavedItems","userId","endpoint","getCollections","saveItem","itemId","itemType","collectionId","removeSavedItem","saveId","createCollection","name","description","deleteCollection","getUserStats","MEDIUM","getUserHistory","limit","offset","params","clearUserHistory","deleteHistoryItem","getFAQs","category","searchFAQs","query","getUserAchievements","getAllAchievements","deleteAccount","password"],"sourceRoot":"../../../../src","sources":["core/mixins/OxyServices.features.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,WAAW,QAAQ,gBAAgB;;AAE5C;;AAuFA,OAAO,SAASC,wBAAwBA,CAAmCC,IAAO,EAAE;EAChF,OAAO,cAAcA,IAAI,CAAC;IACtBC,WAAWA,CAAC,GAAGC,IAAW,EAAE;MACxB,KAAK,CAAC,GAAIA,IAAc,CAAC;IAC7B;;IAEA;IACA;IACA;;IAEA;AACR;AACA;IACQ,MAAMC,cAAcA,CAACC,OAAwB,EAA2B;MACpE,IAAI;QACA,OAAO,MAAM,IAAI,CAACC,WAAW,CAAiB,MAAM,EAAE,eAAe,EAAED,OAAO,EAAE;UAC5EE,KAAK,EAAE;QACX,CAAC,CAAC;MACN,CAAC,CAAC,OAAOC,KAAK,EAAE;QACZ,MAAM,IAAI,CAACC,WAAW,CAACD,KAAK,CAAC;MACjC;IACJ;;IAEA;IACA;IACA;;IAEA;AACR;AACA;IACQ,MAAME,oBAAoBA,CAAA,EAAgC;MACtD,IAAI;QACA,OAAO,MAAM,IAAI,CAACJ,WAAW,CAAqB,KAAK,EAAE,0BAA0B,EAAEK,SAAS,EAAE;UAC5FJ,KAAK,EAAE,IAAI;UACXK,QAAQ,EAAEb,WAAW,CAACc;QAC1B,CAAC,CAAC;MACN,CAAC,CAAC,OAAOL,KAAK,EAAE;QACZ,MAAM,IAAI,CAACC,WAAW,CAACD,KAAK,CAAC;MACjC;IACJ;;IAEA;AACR;AACA;IACQ,MAAMM,qBAAqBA,CAAA,EAAmB;MAC1C,IAAI;QACA,OAAO,MAAM,IAAI,CAACR,WAAW,CAAQ,KAAK,EAAE,6BAA6B,EAAEK,SAAS,EAAE;UAClFJ,KAAK,EAAE,IAAI;UACXK,QAAQ,EAAEb,WAAW,CAACc;QAC1B,CAAC,CAAC;MACN,CAAC,CAAC,OAAOL,KAAK,EAAE;QACZ,MAAM,IAAI,CAACC,WAAW,CAACD,KAAK,CAAC;MACjC;IACJ;;IAEA;AACR;AACA;IACQ,MAAMO,SAASA,CAACC,MAAc,EAAEC,eAAwB,EAA+B;MACnF,OAAO,IAAI,CAACC,aAAa,CAAC,YAAY;QAClC,OAAO,MAAM,IAAI,CAACZ,WAAW,CAAqB,MAAM,EAAE,8BAA8B,EAAE;UACtFU,MAAM;UACNC;QACJ,CAAC,EAAE;UAAEV,KAAK,EAAE;QAAM,CAAC,CAAC;MACxB,CAAC,EAAE,WAAW,CAAC;IACnB;;IAEA;AACR;AACA;IACQ,MAAMY,kBAAkBA,CAACC,SAAiB,EAAEH,eAAwB,EAA+B;MAC/F,OAAO,IAAI,CAACC,aAAa,CAAC,YAAY;QAClC,OAAO,MAAM,IAAI,CAACZ,WAAW,CAAqB,MAAM,EAAE,uCAAuC,EAAE;UAC/Fc,SAAS;UACTH;QACJ,CAAC,EAAE;UAAEV,KAAK,EAAE;QAAM,CAAC,CAAC;MACxB,CAAC,EAAE,oBAAoB,CAAC;IAC5B;;IAEA;AACR;AACA;IACQ,MAAMc,kBAAkBA,CAACC,cAAsB,EAAiB;MAC5D,OAAO,IAAI,CAACJ,aAAa,CAAC,YAAY;QAClC,MAAM,IAAI,CAACZ,WAAW,CAAC,MAAM,EAAE,sBAAsBgB,cAAc,SAAS,EAAEX,SAAS,EAAE;UACrFJ,KAAK,EAAE;QACX,CAAC,CAAC;MACN,CAAC,EAAE,oBAAoB,CAAC;IAC5B;;IAEA;AACR;AACA;IACQ,MAAMgB,sBAAsBA,CAACD,cAAsB,EAAiB;MAChE,OAAO,IAAI,CAACJ,aAAa,CAAC,YAAY;QAClC,MAAM,IAAI,CAACZ,WAAW,CAAC,MAAM,EAAE,sBAAsBgB,cAAc,aAAa,EAAEX,SAAS,EAAE;UACzFJ,KAAK,EAAE;QACX,CAAC,CAAC;MACN,CAAC,EAAE,wBAAwB,CAAC;IAChC;;IAEA;AACR;AACA;IACQ,MAAMiB,sBAAsBA,CAAA,EAAuC;MAC/D,OAAO,IAAI,CAACN,aAAa,CAAC,YAAY;QAClC,IAAI;UACA,OAAO,MAAM,IAAI,CAACZ,WAAW,CAAqB,KAAK,EAAE,4BAA4B,EAAEK,SAAS,EAAE;YAC9FJ,KAAK,EAAE,IAAI;YACXK,QAAQ,EAAEb,WAAW,CAAC0B;UAC1B,CAAC,CAAC;QACN,CAAC,CAAC,OAAOjB,KAAU,EAAE;UACjB,IAAIA,KAAK,CAACkB,MAAM,KAAK,GAAG,EAAE,OAAO,IAAI;UACrC,MAAMlB,KAAK;QACf;MACJ,CAAC,EAAE,wBAAwB,CAAC;IAChC;;IAEA;IACA;IACA;;IAEA;AACR;AACA;IACQ,MAAMmB,aAAaA,CAACC,MAAe,EAAwB;MACvD,OAAO,IAAI,CAACV,aAAa,CAAC,YAAY;QAClC,MAAMW,QAAQ,GAAGD,MAAM,GAAG,cAAcA,MAAM,QAAQ,GAAG,YAAY;QACrE,OAAO,MAAM,IAAI,CAACtB,WAAW,CAAc,KAAK,EAAEuB,QAAQ,EAAElB,SAAS,EAAE;UACnEJ,KAAK,EAAE,IAAI;UACXK,QAAQ,EAAEb,WAAW,CAAC0B;QAC1B,CAAC,CAAC;MACN,CAAC,EAAE,eAAe,CAAC;IACvB;;IAEA;AACR;AACA;IACQ,MAAMK,cAAcA,CAACF,MAAe,EAAyB;MACzD,OAAO,IAAI,CAACV,aAAa,CAAC,YAAY;QAClC,MAAMW,QAAQ,GAAGD,MAAM,GAAG,cAAcA,MAAM,cAAc,GAAG,kBAAkB;QACjF,OAAO,MAAM,IAAI,CAACtB,WAAW,CAAe,KAAK,EAAEuB,QAAQ,EAAElB,SAAS,EAAE;UACpEJ,KAAK,EAAE,IAAI;UACXK,QAAQ,EAAEb,WAAW,CAAC0B;QAC1B,CAAC,CAAC;MACN,CAAC,EAAE,gBAAgB,CAAC;IACxB;;IAEA;AACR;AACA;IACQ,MAAMM,QAAQA,CAACC,MAAc,EAAEC,QAAgB,EAAEC,YAAqB,EAAsB;MACxF,OAAO,IAAI,CAAChB,aAAa,CAAC,YAAY;QAClC,OAAO,MAAM,IAAI,CAACZ,WAAW,CAAY,MAAM,EAAE,YAAY,EAAE;UAC3D0B,MAAM;UACNC,QAAQ;UACRC;QACJ,CAAC,EAAE;UAAE3B,KAAK,EAAE;QAAM,CAAC,CAAC;MACxB,CAAC,EAAE,UAAU,CAAC;IAClB;;IAEA;AACR;AACA;IACQ,MAAM4B,eAAeA,CAACC,MAAc,EAAiB;MACjD,OAAO,IAAI,CAAClB,aAAa,CAAC,YAAY;QAClC,MAAM,IAAI,CAACZ,WAAW,CAAC,QAAQ,EAAE,cAAc8B,MAAM,EAAE,EAAEzB,SAAS,EAAE;UAAEJ,KAAK,EAAE;QAAM,CAAC,CAAC;MACzF,CAAC,EAAE,iBAAiB,CAAC;IACzB;;IAEA;AACR;AACA;IACQ,MAAM8B,gBAAgBA,CAACC,IAAY,EAAEC,WAAoB,EAAuB;MAC5E,OAAO,IAAI,CAACrB,aAAa,CAAC,YAAY;QAClC,OAAO,MAAM,IAAI,CAACZ,WAAW,CAAa,MAAM,EAAE,kBAAkB,EAAE;UAClEgC,IAAI;UACJC;QACJ,CAAC,EAAE;UAAEhC,KAAK,EAAE;QAAM,CAAC,CAAC;MACxB,CAAC,EAAE,kBAAkB,CAAC;IAC1B;;IAEA;AACR;AACA;IACQ,MAAMiC,gBAAgBA,CAACN,YAAoB,EAAiB;MACxD,OAAO,IAAI,CAAChB,aAAa,CAAC,YAAY;QAClC,MAAM,IAAI,CAACZ,WAAW,CAAC,QAAQ,EAAE,oBAAoB4B,YAAY,EAAE,EAAEvB,SAAS,EAAE;UAAEJ,KAAK,EAAE;QAAM,CAAC,CAAC;MACrG,CAAC,EAAE,kBAAkB,CAAC;IAC1B;;IAEA;IACA;IACA;;IAEA;AACR;AACA;IACQ,MAAMkC,YAAYA,CAACb,MAAc,EAAsB;MACnD,IAAI;QACA,OAAO,MAAM,IAAI,CAACtB,WAAW,CAAY,KAAK,EAAE,cAAcsB,MAAM,QAAQ,EAAEjB,SAAS,EAAE;UACrFJ,KAAK,EAAE,IAAI;UACXK,QAAQ,EAAEb,WAAW,CAAC2C;QAC1B,CAAC,CAAC;MACN,CAAC,CAAC,OAAOlC,KAAK,EAAE;QACZ,MAAM,IAAI,CAACC,WAAW,CAACD,KAAK,CAAC;MACjC;IACJ;;IAEA;IACA;IACA;;IAEA;AACR;AACA;IACQ,MAAMmC,cAAcA,CAACf,MAAe,EAAEgB,KAAc,EAAEC,MAAe,EAA0B;MAC3F,OAAO,IAAI,CAAC3B,aAAa,CAAC,YAAY;QAClC,MAAM4B,MAAW,GAAG,CAAC,CAAC;QACtB,IAAIF,KAAK,EAAEE,MAAM,CAACF,KAAK,GAAGA,KAAK;QAC/B,IAAIC,MAAM,EAAEC,MAAM,CAACD,MAAM,GAAGA,MAAM;QAElC,MAAMhB,QAAQ,GAAGD,MAAM,GAAG,cAAcA,MAAM,UAAU,GAAG,cAAc;QACzE,OAAO,MAAM,IAAI,CAACtB,WAAW,CAAgB,KAAK,EAAEuB,QAAQ,EAAEiB,MAAM,EAAE;UAClEvC,KAAK,EAAE,IAAI;UACXK,QAAQ,EAAEb,WAAW,CAAC0B;QAC1B,CAAC,CAAC;MACN,CAAC,EAAE,gBAAgB,CAAC;IACxB;;IAEA;AACR;AACA;IACQ,MAAMsB,gBAAgBA,CAAA,EAAkB;MACpC,OAAO,IAAI,CAAC7B,aAAa,CAAC,YAAY;QAClC,MAAM,IAAI,CAACZ,WAAW,CAAC,QAAQ,EAAE,cAAc,EAAEK,SAAS,EAAE;UAAEJ,KAAK,EAAE;QAAM,CAAC,CAAC;MACjF,CAAC,EAAE,kBAAkB,CAAC;IAC1B;;IAEA;AACR;AACA;IACQ,MAAMyC,iBAAiBA,CAAChB,MAAc,EAAiB;MACnD,OAAO,IAAI,CAACd,aAAa,CAAC,YAAY;QAClC,MAAM,IAAI,CAACZ,WAAW,CAAC,QAAQ,EAAE,gBAAgB0B,MAAM,EAAE,EAAErB,SAAS,EAAE;UAAEJ,KAAK,EAAE;QAAM,CAAC,CAAC;MAC3F,CAAC,EAAE,mBAAmB,CAAC;IAC3B;;IAEA;IACA;IACA;;IAEA;AACR;AACA;IACQ,MAAM0C,OAAOA,CAACC,QAAiB,EAAkB;MAC7C,IAAI;QACA,MAAMJ,MAAM,GAAGI,QAAQ,GAAG;UAAEA;QAAS,CAAC,GAAGvC,SAAS;QAClD,OAAO,MAAM,IAAI,CAACL,WAAW,CAAQ,KAAK,EAAE,WAAW,EAAEwC,MAAM,EAAE;UAC7DvC,KAAK,EAAE,IAAI;UACXK,QAAQ,EAAEb,WAAW,CAACc;QAC1B,CAAC,CAAC;MACN,CAAC,CAAC,OAAOL,KAAK,EAAE;QACZ,MAAM,IAAI,CAACC,WAAW,CAACD,KAAK,CAAC;MACjC;IACJ;;IAEA;AACR;AACA;IACQ,MAAM2C,UAAUA,CAACC,KAAa,EAAkB;MAC5C,IAAI;QACA,OAAO,MAAM,IAAI,CAAC9C,WAAW,CAAQ,KAAK,EAAE,kBAAkB,EAAE;UAAE8C;QAAM,CAAC,EAAE;UACvE7C,KAAK,EAAE,IAAI;UACXK,QAAQ,EAAEb,WAAW,CAAC2C;QAC1B,CAAC,CAAC;MACN,CAAC,CAAC,OAAOlC,KAAK,EAAE;QACZ,MAAM,IAAI,CAACC,WAAW,CAACD,KAAK,CAAC;MACjC;IACJ;;IAEA;IACA;IACA;;IAEA;AACR;AACA;IACQ,MAAM6C,mBAAmBA,CAACzB,MAAe,EAA0B;MAC/D,OAAO,IAAI,CAACV,aAAa,CAAC,YAAY;QAClC,MAAMW,QAAQ,GAAGD,MAAM,GAAG,cAAcA,MAAM,eAAe,GAAG,mBAAmB;QACnF,OAAO,MAAM,IAAI,CAACtB,WAAW,CAAgB,KAAK,EAAEuB,QAAQ,EAAElB,SAAS,EAAE;UACrEJ,KAAK,EAAE,IAAI;UACXK,QAAQ,EAAEb,WAAW,CAAC2C;QAC1B,CAAC,CAAC;MACN,CAAC,EAAE,qBAAqB,CAAC;IAC7B;;IAEA;AACR;AACA;IACQ,MAAMY,kBAAkBA,CAAA,EAA2B;MAC/C,IAAI;QACA,OAAO,MAAM,IAAI,CAAChD,WAAW,CAAgB,KAAK,EAAE,uBAAuB,EAAEK,SAAS,EAAE;UACpFJ,KAAK,EAAE,IAAI;UACXK,QAAQ,EAAEb,WAAW,CAACc;QAC1B,CAAC,CAAC;MACN,CAAC,CAAC,OAAOL,KAAK,EAAE;QACZ,MAAM,IAAI,CAACC,WAAW,CAACD,KAAK,CAAC;MACjC;IACJ;;IAEA;IACA;IACA;;IAEA;AACR;AACA;IACQ,MAAM+C,aAAaA,CAACC,QAAgB,EAAiB;MACjD,OAAO,IAAI,CAACtC,aAAa,CAAC,YAAY;QAClC,MAAM,IAAI,CAACZ,WAAW,CAAC,QAAQ,EAAE,cAAc,EAAE;UAAEkD;QAAS,CAAC,EAAE;UAAEjD,KAAK,EAAE;QAAM,CAAC,CAAC;MACpF,CAAC,EAAE,eAAe,CAAC;IACvB;EACJ,CAAC;AACL","ignoreList":[]}
@@ -24,6 +24,7 @@ import { OxyServicesAnalyticsMixin } from './OxyServices.analytics';
24
24
  import { OxyServicesDevicesMixin } from './OxyServices.devices';
25
25
  import { OxyServicesSecurityMixin } from './OxyServices.security';
26
26
  import { OxyServicesUtilityMixin } from './OxyServices.utility';
27
+ import { OxyServicesFeaturesMixin } from './OxyServices.features';
27
28
 
28
29
  /**
29
30
  * Composes all OxyServices mixins in the correct order
@@ -39,10 +40,10 @@ import { OxyServicesUtilityMixin } from './OxyServices.utility';
39
40
  * @returns The fully composed OxyServices class with all mixins applied
40
41
  */
41
42
  export function composeOxyServices() {
42
- return OxyServicesUtilityMixin(OxyServicesSecurityMixin(OxyServicesDevicesMixin(OxyServicesAnalyticsMixin(OxyServicesLocationMixin(OxyServicesDeveloperMixin(OxyServicesAssetsMixin(OxyServicesKarmaMixin(OxyServicesPaymentMixin(OxyServicesLanguageMixin(OxyServicesPrivacyMixin(OxyServicesUserMixin(
43
+ return OxyServicesUtilityMixin(OxyServicesFeaturesMixin(OxyServicesSecurityMixin(OxyServicesDevicesMixin(OxyServicesAnalyticsMixin(OxyServicesLocationMixin(OxyServicesDeveloperMixin(OxyServicesAssetsMixin(OxyServicesKarmaMixin(OxyServicesPaymentMixin(OxyServicesLanguageMixin(OxyServicesPrivacyMixin(OxyServicesUserMixin(
43
44
  // Cross-domain authentication mixins (web-only)
44
45
  OxyServicesRedirectAuthMixin(OxyServicesPopupAuthMixin(OxyServicesFedCMMixin(
45
46
  // Base authentication mixin
46
- OxyServicesAuthMixin(OxyServicesBase))))))))))))))));
47
+ OxyServicesAuthMixin(OxyServicesBase)))))))))))))))));
47
48
  }
48
49
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["OxyServicesBase","OxyServicesAuthMixin","OxyServicesFedCMMixin","OxyServicesPopupAuthMixin","OxyServicesRedirectAuthMixin","OxyServicesUserMixin","OxyServicesPrivacyMixin","OxyServicesLanguageMixin","OxyServicesPaymentMixin","OxyServicesKarmaMixin","OxyServicesAssetsMixin","OxyServicesDeveloperMixin","OxyServicesLocationMixin","OxyServicesAnalyticsMixin","OxyServicesDevicesMixin","OxyServicesSecurityMixin","OxyServicesUtilityMixin","composeOxyServices"],"sourceRoot":"../../../../src","sources":["core/mixins/index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,eAAe,QAAQ,qBAAqB;AACrD,SAASC,oBAAoB,QAAQ,oBAAoB;AACzD,SAASC,qBAAqB,QAAQ,qBAAqB;AAC3D,SAASC,yBAAyB,QAAQ,qBAAqB;AAC/D,SAASC,4BAA4B,QAAQ,wBAAwB;AACrE,SAASC,oBAAoB,QAAQ,oBAAoB;AACzD,SAASC,uBAAuB,QAAQ,uBAAuB;AAC/D,SAASC,wBAAwB,QAAQ,wBAAwB;AACjE,SAASC,uBAAuB,QAAQ,uBAAuB;AAC/D,SAASC,qBAAqB,QAAQ,qBAAqB;AAC3D,SAASC,sBAAsB,QAAQ,sBAAsB;AAC7D,SAASC,yBAAyB,QAAQ,yBAAyB;AACnE,SAASC,wBAAwB,QAAQ,wBAAwB;AACjE,SAASC,yBAAyB,QAAQ,yBAAyB;AACnE,SAASC,uBAAuB,QAAQ,uBAAuB;AAC/D,SAASC,wBAAwB,QAAQ,wBAAwB;AACjE,SAASC,uBAAuB,QAAQ,uBAAuB;;AAE/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,kBAAkBA,CAAA,EAAG;EACnC,OAAOD,uBAAuB,CAC5BD,wBAAwB,CACtBD,uBAAuB,CACrBD,yBAAyB,CACvBD,wBAAwB,CACtBD,yBAAyB,CACvBD,sBAAsB,CACpBD,qBAAqB,CACnBD,uBAAuB,CACrBD,wBAAwB,CACtBD,uBAAuB,CACrBD,oBAAoB;EAClB;EACAD,4BAA4B,CAC1BD,yBAAyB,CACvBD,qBAAqB;EACnB;EACAD,oBAAoB,CAACD,eAAe,CACtC,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["OxyServicesBase","OxyServicesAuthMixin","OxyServicesFedCMMixin","OxyServicesPopupAuthMixin","OxyServicesRedirectAuthMixin","OxyServicesUserMixin","OxyServicesPrivacyMixin","OxyServicesLanguageMixin","OxyServicesPaymentMixin","OxyServicesKarmaMixin","OxyServicesAssetsMixin","OxyServicesDeveloperMixin","OxyServicesLocationMixin","OxyServicesAnalyticsMixin","OxyServicesDevicesMixin","OxyServicesSecurityMixin","OxyServicesUtilityMixin","OxyServicesFeaturesMixin","composeOxyServices"],"sourceRoot":"../../../../src","sources":["core/mixins/index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,eAAe,QAAQ,qBAAqB;AACrD,SAASC,oBAAoB,QAAQ,oBAAoB;AACzD,SAASC,qBAAqB,QAAQ,qBAAqB;AAC3D,SAASC,yBAAyB,QAAQ,qBAAqB;AAC/D,SAASC,4BAA4B,QAAQ,wBAAwB;AACrE,SAASC,oBAAoB,QAAQ,oBAAoB;AACzD,SAASC,uBAAuB,QAAQ,uBAAuB;AAC/D,SAASC,wBAAwB,QAAQ,wBAAwB;AACjE,SAASC,uBAAuB,QAAQ,uBAAuB;AAC/D,SAASC,qBAAqB,QAAQ,qBAAqB;AAC3D,SAASC,sBAAsB,QAAQ,sBAAsB;AAC7D,SAASC,yBAAyB,QAAQ,yBAAyB;AACnE,SAASC,wBAAwB,QAAQ,wBAAwB;AACjE,SAASC,yBAAyB,QAAQ,yBAAyB;AACnE,SAASC,uBAAuB,QAAQ,uBAAuB;AAC/D,SAASC,wBAAwB,QAAQ,wBAAwB;AACjE,SAASC,uBAAuB,QAAQ,uBAAuB;AAC/D,SAASC,wBAAwB,QAAQ,wBAAwB;;AAEjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,kBAAkBA,CAAA,EAAG;EACnC,OAAOF,uBAAuB,CAC5BC,wBAAwB,CACtBF,wBAAwB,CACtBD,uBAAuB,CACrBD,yBAAyB,CACvBD,wBAAwB,CACtBD,yBAAyB,CACvBD,sBAAsB,CACpBD,qBAAqB,CACnBD,uBAAuB,CACrBD,wBAAwB,CACtBD,uBAAuB,CACrBD,oBAAoB;EAClB;EACAD,4BAA4B,CAC1BD,yBAAyB,CACvBD,qBAAqB;EACnB;EACAD,oBAAoB,CAACD,eAAe,CACtC,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CAAC;AACH","ignoreList":[]}
@@ -22,7 +22,9 @@ const GroupedItemComponent = ({
22
22
  showChevron = false,
23
23
  disabled = false,
24
24
  customContent,
25
- customIcon
25
+ customIcon,
26
+ accessibilityLabel,
27
+ accessibilityHint
26
28
  }) => {
27
29
  const hookColorScheme = useColorScheme();
28
30
  const colorScheme = normalizeColorScheme(hookColorScheme);
@@ -74,11 +76,19 @@ const GroupedItemComponent = ({
74
76
  onPressIn: disabled ? undefined : handlePressIn,
75
77
  onPress: onPress,
76
78
  activeOpacity: 0.7,
79
+ accessibilityRole: "button",
80
+ accessibilityLabel: accessibilityLabel || title,
81
+ accessibilityHint: accessibilityHint || subtitle,
82
+ accessibilityState: {
83
+ disabled
84
+ },
77
85
  children: content
78
86
  });
79
87
  }
80
88
  return /*#__PURE__*/_jsx(View, {
81
89
  style: itemStyles,
90
+ accessibilityRole: "text",
91
+ accessibilityLabel: accessibilityLabel || title,
82
92
  children: content
83
93
  });
84
94
  };
@@ -1 +1 @@
1
- {"version":3,"names":["React","memo","useMemo","View","Text","TouchableOpacity","StyleSheet","Ionicons","MaterialCommunityIcons","useColorScheme","useHapticPress","darkenColor","normalizeColorScheme","Colors","jsx","_jsx","jsxs","_jsxs","GroupedItemComponent","icon","iconColor","title","subtitle","onPress","isFirst","isLast","showChevron","disabled","customContent","customIcon","hookColorScheme","colorScheme","colors","finalIconColor","iconSecurity","itemStyles","styles","groupedItem","firstGroupedItem","lastGroupedItem","backgroundColor","card","content","style","groupedItemContent","children","actionIcon","iconContainer","name","size","color","actionTextContainer","actionButtonText","text","actionButtonSubtext","secondaryText","handlePressIn","onPressIn","undefined","activeOpacity","displayName","GroupedItem","create","flexDirection","alignItems","justifyContent","overflow","width","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","paddingVertical","paddingHorizontal","gap","height","borderRadius","flex","fontSize","fontWeight","marginTop"],"sourceRoot":"../../../../src","sources":["ui/components/GroupedItem.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","memo","useMemo","View","Text","TouchableOpacity","StyleSheet","Ionicons","MaterialCommunityIcons","useColorScheme","useHapticPress","darkenColor","normalizeColorScheme","Colors","jsx","_jsx","jsxs","_jsxs","GroupedItemComponent","icon","iconColor","title","subtitle","onPress","isFirst","isLast","showChevron","disabled","customContent","customIcon","accessibilityLabel","accessibilityHint","hookColorScheme","colorScheme","colors","finalIconColor","iconSecurity","itemStyles","styles","groupedItem","firstGroupedItem","lastGroupedItem","backgroundColor","card","content","style","groupedItemContent","children","actionIcon","iconContainer","name","size","color","actionTextContainer","actionButtonText","text","actionButtonSubtext","secondaryText","handlePressIn","onPressIn","undefined","activeOpacity","accessibilityRole","accessibilityState","displayName","GroupedItem","create","flexDirection","alignItems","justifyContent","overflow","width","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","paddingVertical","paddingHorizontal","gap","height","borderRadius","flex","fontSize","fontWeight","marginTop"],"sourceRoot":"../../../../src","sources":["ui/components/GroupedItem.tsx"],"mappings":"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","ignoreList":[]}
@@ -15,23 +15,29 @@ const SettingRow = ({
15
15
  disabled = false,
16
16
  textColor,
17
17
  mutedTextColor,
18
- borderColor
18
+ borderColor,
19
+ activeColor = '#d169e5',
20
+ inactiveColor = '#767577',
21
+ accessibilityLabel
19
22
  }) => {
20
23
  return /*#__PURE__*/_jsxs(View, {
21
24
  style: [styles.settingRow, borderColor ? {
22
25
  borderBottomColor: borderColor
23
26
  } : undefined],
27
+ accessibilityRole: "none",
24
28
  children: [/*#__PURE__*/_jsxs(View, {
25
29
  style: styles.settingInfo,
26
30
  children: [/*#__PURE__*/_jsx(Text, {
27
31
  style: [styles.settingTitle, textColor ? {
28
32
  color: textColor
29
33
  } : undefined],
34
+ accessibilityRole: "text",
30
35
  children: title
31
36
  }), description && /*#__PURE__*/_jsx(Text, {
32
37
  style: [styles.settingDescription, mutedTextColor ? {
33
38
  color: mutedTextColor
34
39
  } : undefined],
40
+ accessibilityRole: "text",
35
41
  children: description
36
42
  })]
37
43
  }), /*#__PURE__*/_jsx(Switch, {
@@ -39,10 +45,17 @@ const SettingRow = ({
39
45
  onValueChange: onValueChange,
40
46
  disabled: disabled,
41
47
  trackColor: {
42
- false: '#767577',
43
- true: '#d169e5'
48
+ false: inactiveColor,
49
+ true: activeColor
44
50
  },
45
- thumbColor: value ? '#fff' : '#f4f3f4'
51
+ thumbColor: value ? '#fff' : '#f4f3f4',
52
+ accessibilityRole: "switch",
53
+ accessibilityLabel: accessibilityLabel || title,
54
+ accessibilityState: {
55
+ checked: value,
56
+ disabled
57
+ },
58
+ accessibilityHint: description
46
59
  })]
47
60
  });
48
61
  };
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","Text","Switch","StyleSheet","jsx","_jsx","jsxs","_jsxs","SettingRow","title","description","value","onValueChange","disabled","textColor","mutedTextColor","borderColor","style","styles","settingRow","borderBottomColor","undefined","children","settingInfo","settingTitle","color","settingDescription","trackColor","false","true","thumbColor","create","flexDirection","justifyContent","alignItems","paddingVertical","borderBottomWidth","flex","marginRight","fontSize","fontWeight","marginBottom","opacity","memo"],"sourceRoot":"../../../../src","sources":["ui/components/SettingRow.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,IAAI,EAAEC,MAAM,EAAEC,UAAU,QAAQ,cAAc;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAa9D;AACA;AACA;AACA;AACA,MAAMC,UAAqC,GAAGA,CAAC;EAC3CC,KAAK;EACLC,WAAW;EACXC,KAAK;EACLC,aAAa;EACbC,QAAQ,GAAG,KAAK;EAChBC,SAAS;EACTC,cAAc;EACdC;AACJ,CAAC,KAAK;EACF,oBACIT,KAAA,CAACP,IAAI;IAACiB,KAAK,EAAE,CAACC,MAAM,CAACC,UAAU,EAAEH,WAAW,GAAG;MAAEI,iBAAiB,EAAEJ;IAAY,CAAC,GAAGK,SAAS,CAAE;IAAAC,QAAA,gBAC3Ff,KAAA,CAACP,IAAI;MAACiB,KAAK,EAAEC,MAAM,CAACK,WAAY;MAAAD,QAAA,gBAC5BjB,IAAA,CAACJ,IAAI;QAACgB,KAAK,EAAE,CAACC,MAAM,CAACM,YAAY,EAAEV,SAAS,GAAG;UAAEW,KAAK,EAAEX;QAAU,CAAC,GAAGO,SAAS,CAAE;QAAAC,QAAA,EAC5Eb;MAAK,CACJ,CAAC,EACNC,WAAW,iBACRL,IAAA,CAACJ,IAAI;QAACgB,KAAK,EAAE,CAACC,MAAM,CAACQ,kBAAkB,EAAEX,cAAc,GAAG;UAAEU,KAAK,EAAEV;QAAe,CAAC,GAAGM,SAAS,CAAE;QAAAC,QAAA,EAC5FZ;MAAW,CACV,CACT;IAAA,CACC,CAAC,eACPL,IAAA,CAACH,MAAM;MACHS,KAAK,EAAEA,KAAM;MACbC,aAAa,EAAEA,aAAc;MAC7BC,QAAQ,EAAEA,QAAS;MACnBc,UAAU,EAAE;QAAEC,KAAK,EAAE,SAAS;QAAEC,IAAI,EAAE;MAAU,CAAE;MAClDC,UAAU,EAAEnB,KAAK,GAAG,MAAM,GAAG;IAAU,CAC1C,CAAC;EAAA,CACA,CAAC;AAEf,CAAC;AAED,MAAMO,MAAM,GAAGf,UAAU,CAAC4B,MAAM,CAAC;EAC7BZ,UAAU,EAAE;IACRa,aAAa,EAAE,KAAK;IACpBC,cAAc,EAAE,eAAe;IAC/BC,UAAU,EAAE,QAAQ;IACpBC,eAAe,EAAE,EAAE;IACnBC,iBAAiB,EAAE;EACvB,CAAC;EACDb,WAAW,EAAE;IACTc,IAAI,EAAE,CAAC;IACPC,WAAW,EAAE;EACjB,CAAC;EACDd,YAAY,EAAE;IACVe,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBC,YAAY,EAAE;EAClB,CAAC;EACDf,kBAAkB,EAAE;IAChBa,QAAQ,EAAE,EAAE;IACZG,OAAO,EAAE;EACb;AACJ,CAAC,CAAC;AAEF,4BAAe3C,KAAK,CAAC4C,IAAI,CAACnC,UAAU,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","View","Text","Switch","StyleSheet","jsx","_jsx","jsxs","_jsxs","SettingRow","title","description","value","onValueChange","disabled","textColor","mutedTextColor","borderColor","activeColor","inactiveColor","accessibilityLabel","style","styles","settingRow","borderBottomColor","undefined","accessibilityRole","children","settingInfo","settingTitle","color","settingDescription","trackColor","false","true","thumbColor","accessibilityState","checked","accessibilityHint","create","flexDirection","justifyContent","alignItems","paddingVertical","borderBottomWidth","flex","marginRight","fontSize","fontWeight","marginBottom","opacity","memo"],"sourceRoot":"../../../../src","sources":["ui/components/SettingRow.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,IAAI,EAAEC,MAAM,EAAEC,UAAU,QAAQ,cAAc;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAmB9D;AACA;AACA;AACA;AACA,MAAMC,UAAqC,GAAGA,CAAC;EAC3CC,KAAK;EACLC,WAAW;EACXC,KAAK;EACLC,aAAa;EACbC,QAAQ,GAAG,KAAK;EAChBC,SAAS;EACTC,cAAc;EACdC,WAAW;EACXC,WAAW,GAAG,SAAS;EACvBC,aAAa,GAAG,SAAS;EACzBC;AACJ,CAAC,KAAK;EACF,oBACIZ,KAAA,CAACP,IAAI;IACDoB,KAAK,EAAE,CAACC,MAAM,CAACC,UAAU,EAAEN,WAAW,GAAG;MAAEO,iBAAiB,EAAEP;IAAY,CAAC,GAAGQ,SAAS,CAAE;IACzFC,iBAAiB,EAAC,MAAM;IAAAC,QAAA,gBAExBnB,KAAA,CAACP,IAAI;MAACoB,KAAK,EAAEC,MAAM,CAACM,WAAY;MAAAD,QAAA,gBAC5BrB,IAAA,CAACJ,IAAI;QACDmB,KAAK,EAAE,CAACC,MAAM,CAACO,YAAY,EAAEd,SAAS,GAAG;UAAEe,KAAK,EAAEf;QAAU,CAAC,GAAGU,SAAS,CAAE;QAC3EC,iBAAiB,EAAC,MAAM;QAAAC,QAAA,EAEvBjB;MAAK,CACJ,CAAC,EACNC,WAAW,iBACRL,IAAA,CAACJ,IAAI;QACDmB,KAAK,EAAE,CAACC,MAAM,CAACS,kBAAkB,EAAEf,cAAc,GAAG;UAAEc,KAAK,EAAEd;QAAe,CAAC,GAAGS,SAAS,CAAE;QAC3FC,iBAAiB,EAAC,MAAM;QAAAC,QAAA,EAEvBhB;MAAW,CACV,CACT;IAAA,CACC,CAAC,eACPL,IAAA,CAACH,MAAM;MACHS,KAAK,EAAEA,KAAM;MACbC,aAAa,EAAEA,aAAc;MAC7BC,QAAQ,EAAEA,QAAS;MACnBkB,UAAU,EAAE;QAAEC,KAAK,EAAEd,aAAa;QAAEe,IAAI,EAAEhB;MAAY,CAAE;MACxDiB,UAAU,EAAEvB,KAAK,GAAG,MAAM,GAAG,SAAU;MACvCc,iBAAiB,EAAC,QAAQ;MAC1BN,kBAAkB,EAAEA,kBAAkB,IAAIV,KAAM;MAChD0B,kBAAkB,EAAE;QAAEC,OAAO,EAAEzB,KAAK;QAAEE;MAAS,CAAE;MACjDwB,iBAAiB,EAAE3B;IAAY,CAClC,CAAC;EAAA,CACA,CAAC;AAEf,CAAC;AAED,MAAMW,MAAM,GAAGlB,UAAU,CAACmC,MAAM,CAAC;EAC7BhB,UAAU,EAAE;IACRiB,aAAa,EAAE,KAAK;IACpBC,cAAc,EAAE,eAAe;IAC/BC,UAAU,EAAE,QAAQ;IACpBC,eAAe,EAAE,EAAE;IACnBC,iBAAiB,EAAE;EACvB,CAAC;EACDhB,WAAW,EAAE;IACTiB,IAAI,EAAE,CAAC;IACPC,WAAW,EAAE;EACjB,CAAC;EACDjB,YAAY,EAAE;IACVkB,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBC,YAAY,EAAE;EAClB,CAAC;EACDlB,kBAAkB,EAAE;IAChBgB,QAAQ,EAAE,EAAE;IACZG,OAAO,EAAE;EACb;AACJ,CAAC,CAAC;AAEF,4BAAelD,KAAK,CAACmD,IAAI,CAAC1C,UAAU,CAAC","ignoreList":[]}
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+
3
+ import React from 'react';
4
+ import { View, Text, TextInput } from 'react-native';
5
+ import { Ionicons } from '@expo/vector-icons';
6
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
+ const FormInput = /*#__PURE__*/React.memo(({
8
+ icon,
9
+ label,
10
+ value,
11
+ onChangeText,
12
+ placeholder,
13
+ multiline = false,
14
+ numberOfLines = 1,
15
+ testID,
16
+ colors,
17
+ styles,
18
+ borderColor,
19
+ accessibilityLabel,
20
+ accessibilityHint
21
+ }) => /*#__PURE__*/_jsx(View, {
22
+ style: styles.inputContainer,
23
+ children: /*#__PURE__*/_jsxs(View, {
24
+ style: [multiline ? styles.textAreaWrapper : styles.premiumInputWrapper, {
25
+ borderColor: borderColor || colors.border,
26
+ backgroundColor: colors.inputBackground,
27
+ shadowColor: colors.primary,
28
+ shadowOffset: {
29
+ width: 0,
30
+ height: 4
31
+ },
32
+ shadowOpacity: 0.1,
33
+ shadowRadius: 12,
34
+ elevation: 3
35
+ }],
36
+ children: [!multiline && /*#__PURE__*/_jsx(Ionicons, {
37
+ name: icon,
38
+ size: 22,
39
+ color: colors.secondaryText,
40
+ style: styles.inputIcon
41
+ }), /*#__PURE__*/_jsxs(View, {
42
+ style: styles.inputContent,
43
+ children: [/*#__PURE__*/_jsx(Text, {
44
+ style: [styles.modernLabel, {
45
+ color: colors.secondaryText
46
+ }],
47
+ children: label
48
+ }), /*#__PURE__*/_jsx(TextInput, {
49
+ style: [multiline ? styles.textArea : styles.modernInput, {
50
+ color: colors.text
51
+ }],
52
+ value: value,
53
+ onChangeText: onChangeText,
54
+ placeholder: placeholder,
55
+ placeholderTextColor: colors.secondaryText + '60',
56
+ multiline: multiline,
57
+ numberOfLines: multiline ? numberOfLines : undefined,
58
+ testID: testID,
59
+ accessibilityLabel: accessibilityLabel || label,
60
+ accessibilityHint: accessibilityHint
61
+ })]
62
+ })]
63
+ })
64
+ }));
65
+ FormInput.displayName = 'FormInput';
66
+ export default FormInput;
67
+ //# sourceMappingURL=FormInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","View","Text","TextInput","Ionicons","jsx","_jsx","jsxs","_jsxs","FormInput","memo","icon","label","value","onChangeText","placeholder","multiline","numberOfLines","testID","colors","styles","borderColor","accessibilityLabel","accessibilityHint","style","inputContainer","children","textAreaWrapper","premiumInputWrapper","border","backgroundColor","inputBackground","shadowColor","primary","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","name","size","color","secondaryText","inputIcon","inputContent","modernLabel","textArea","modernInput","text","placeholderTextColor","undefined","displayName"],"sourceRoot":"../../../../../src","sources":["ui/components/feedback/FormInput.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,IAAI,EAAEC,SAAS,QAAQ,cAAc;AACpD,SAASC,QAAQ,QAAQ,oBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAmB9C,MAAMC,SAAmC,gBAAGT,KAAK,CAACU,IAAI,CAAC,CAAC;EACpDC,IAAI;EACJC,KAAK;EACLC,KAAK;EACLC,YAAY;EACZC,WAAW;EACXC,SAAS,GAAG,KAAK;EACjBC,aAAa,GAAG,CAAC;EACjBC,MAAM;EACNC,MAAM;EACNC,MAAM;EACNC,WAAW;EACXC,kBAAkB;EAClBC;AACJ,CAAC,kBACGjB,IAAA,CAACL,IAAI;EAACuB,KAAK,EAAEJ,MAAM,CAACK,cAAe;EAAAC,QAAA,eAC/BlB,KAAA,CAACP,IAAI;IAACuB,KAAK,EAAE,CACTR,SAAS,GAAGI,MAAM,CAACO,eAAe,GAAGP,MAAM,CAACQ,mBAAmB,EAC/D;MACIP,WAAW,EAAEA,WAAW,IAAIF,MAAM,CAACU,MAAM;MACzCC,eAAe,EAAEX,MAAM,CAACY,eAAe;MACvCC,WAAW,EAAEb,MAAM,CAACc,OAAO;MAC3BC,YAAY,EAAE;QAAEC,KAAK,EAAE,CAAC;QAAEC,MAAM,EAAE;MAAE,CAAC;MACrCC,aAAa,EAAE,GAAG;MAClBC,YAAY,EAAE,EAAE;MAChBC,SAAS,EAAE;IACf,CAAC,CACH;IAAAb,QAAA,GACG,CAACV,SAAS,iBACPV,IAAA,CAACF,QAAQ;MACLoC,IAAI,EAAE7B,IAAY;MAClB8B,IAAI,EAAE,EAAG;MACTC,KAAK,EAAEvB,MAAM,CAACwB,aAAc;MAC5BnB,KAAK,EAAEJ,MAAM,CAACwB;IAAU,CAC3B,CACJ,eACDpC,KAAA,CAACP,IAAI;MAACuB,KAAK,EAAEJ,MAAM,CAACyB,YAAa;MAAAnB,QAAA,gBAC7BpB,IAAA,CAACJ,IAAI;QAACsB,KAAK,EAAE,CAACJ,MAAM,CAAC0B,WAAW,EAAE;UAAEJ,KAAK,EAAEvB,MAAM,CAACwB;QAAc,CAAC,CAAE;QAAAjB,QAAA,EAC9Dd;MAAK,CACJ,CAAC,eACPN,IAAA,CAACH,SAAS;QACNqB,KAAK,EAAE,CACHR,SAAS,GAAGI,MAAM,CAAC2B,QAAQ,GAAG3B,MAAM,CAAC4B,WAAW,EAChD;UAAEN,KAAK,EAAEvB,MAAM,CAAC8B;QAAK,CAAC,CACxB;QACFpC,KAAK,EAAEA,KAAM;QACbC,YAAY,EAAEA,YAAa;QAC3BC,WAAW,EAAEA,WAAY;QACzBmC,oBAAoB,EAAE/B,MAAM,CAACwB,aAAa,GAAG,IAAK;QAClD3B,SAAS,EAAEA,SAAU;QACrBC,aAAa,EAAED,SAAS,GAAGC,aAAa,GAAGkC,SAAU;QACrDjC,MAAM,EAAEA,MAAO;QACfI,kBAAkB,EAAEA,kBAAkB,IAAIV,KAAM;QAChDW,iBAAiB,EAAEA;MAAkB,CACxC,CAAC;IAAA,CACA,CAAC;EAAA,CACL;AAAC,CACL,CACT,CAAC;AAEFd,SAAS,CAAC2C,WAAW,GAAG,WAAW;AAEnC,eAAe3C,SAAS","ignoreList":[]}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ import React from 'react';
4
+ import { View } from 'react-native';
5
+ import { jsx as _jsx } from "react/jsx-runtime";
6
+ const ProgressIndicator = /*#__PURE__*/React.memo(({
7
+ currentStep,
8
+ totalSteps,
9
+ colors,
10
+ styles
11
+ }) => /*#__PURE__*/_jsx(View, {
12
+ style: styles.progressContainer,
13
+ accessibilityRole: "progressbar",
14
+ accessibilityLabel: `Step ${currentStep + 1} of ${totalSteps}`,
15
+ children: Array.from({
16
+ length: totalSteps
17
+ }, (_, index) => /*#__PURE__*/_jsx(View, {
18
+ style: [styles.progressDot, currentStep === index ? {
19
+ backgroundColor: colors.primary,
20
+ width: 24
21
+ } : {
22
+ backgroundColor: colors.border
23
+ }]
24
+ }, index))
25
+ }));
26
+ ProgressIndicator.displayName = 'ProgressIndicator';
27
+ export default ProgressIndicator;
28
+ //# sourceMappingURL=ProgressIndicator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","View","jsx","_jsx","ProgressIndicator","memo","currentStep","totalSteps","colors","styles","style","progressContainer","accessibilityRole","accessibilityLabel","children","Array","from","length","_","index","progressDot","backgroundColor","primary","width","border","displayName"],"sourceRoot":"../../../../../src","sources":["ui/components/feedback/ProgressIndicator.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,cAAc;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAUpC,MAAMC,iBAAmD,gBAAGJ,KAAK,CAACK,IAAI,CAAC,CAAC;EACpEC,WAAW;EACXC,UAAU;EACVC,MAAM;EACNC;AACJ,CAAC,kBACGN,IAAA,CAACF,IAAI;EAACS,KAAK,EAAED,MAAM,CAACE,iBAAkB;EAACC,iBAAiB,EAAC,aAAa;EAACC,kBAAkB,EAAE,QAAQP,WAAW,GAAG,CAAC,OAAOC,UAAU,EAAG;EAAAO,QAAA,EACjIC,KAAK,CAACC,IAAI,CAAC;IAAEC,MAAM,EAAEV;EAAW,CAAC,EAAE,CAACW,CAAC,EAAEC,KAAK,kBACzChB,IAAA,CAACF,IAAI;IAEDS,KAAK,EAAE,CACHD,MAAM,CAACW,WAAW,EAClBd,WAAW,KAAKa,KAAK,GACjB;MAAEE,eAAe,EAAEb,MAAM,CAACc,OAAO;MAAEC,KAAK,EAAE;IAAG,CAAC,GAC9C;MAAEF,eAAe,EAAEb,MAAM,CAACgB;IAAO,CAAC;EACxC,GANGL,KAOR,CACJ;AAAC,CACA,CACT,CAAC;AAEFf,iBAAiB,CAACqB,WAAW,GAAG,mBAAmB;AAEnD,eAAerB,iBAAiB","ignoreList":[]}