@oxyhq/services 5.4.3 → 5.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (189) hide show
  1. package/README.md +14 -0
  2. package/lib/commonjs/assets/assets/illustrations/HighFive.tsx +41 -0
  3. package/lib/commonjs/assets/icons/OxyServices.js +1 -1
  4. package/lib/commonjs/assets/illustrations/HighFive.js +61 -0
  5. package/lib/commonjs/assets/illustrations/HighFive.js.map +1 -0
  6. package/lib/commonjs/core/index.js +2 -2
  7. package/lib/commonjs/index.js +22 -22
  8. package/lib/commonjs/index.js.map +1 -1
  9. package/lib/commonjs/node/createAuth.js +95 -0
  10. package/lib/commonjs/node/createAuth.js.map +1 -0
  11. package/lib/commonjs/node/index.js +15 -6
  12. package/lib/commonjs/node/index.js.map +1 -1
  13. package/lib/commonjs/package.json +1 -0
  14. package/lib/commonjs/ui/components/Avatar.js +3 -3
  15. package/lib/commonjs/ui/components/Avatar.js.map +1 -1
  16. package/lib/commonjs/ui/components/FollowButton.js +3 -3
  17. package/lib/commonjs/ui/components/GroupedSection.js +1 -1
  18. package/lib/commonjs/ui/components/OxyLogo.js +1 -1
  19. package/lib/commonjs/ui/components/OxyProvider.js +146 -141
  20. package/lib/commonjs/ui/components/OxyProvider.js.map +1 -1
  21. package/lib/commonjs/ui/components/OxySignInButton.js +2 -2
  22. package/lib/commonjs/ui/components/ProfileCard.js +2 -2
  23. package/lib/commonjs/ui/components/Section.js +1 -1
  24. package/lib/commonjs/ui/components/SectionTitle.js +1 -1
  25. package/lib/commonjs/ui/components/icon/index.js +1 -1
  26. package/lib/commonjs/ui/components/index.js +12 -12
  27. package/lib/commonjs/ui/components/internal/GroupedPillButtons.js +213 -0
  28. package/lib/commonjs/ui/components/internal/GroupedPillButtons.js.map +1 -0
  29. package/lib/commonjs/ui/components/internal/TextField.js +576 -0
  30. package/lib/commonjs/ui/components/internal/TextField.js.map +1 -0
  31. package/lib/commonjs/ui/context/OxyContext.js +1 -1
  32. package/lib/commonjs/ui/index.js +19 -11
  33. package/lib/commonjs/ui/index.js.map +1 -1
  34. package/lib/commonjs/ui/navigation/OxyRouter.js +23 -18
  35. package/lib/commonjs/ui/navigation/OxyRouter.js.map +1 -1
  36. package/lib/commonjs/ui/screens/AccountCenterScreen.js +18 -18
  37. package/lib/commonjs/ui/screens/AccountCenterScreen.js.map +1 -1
  38. package/lib/commonjs/ui/screens/AccountManagementDemo.js +3 -3
  39. package/lib/commonjs/ui/screens/AccountManagementDemo.js.map +1 -1
  40. package/lib/commonjs/ui/screens/AccountOverviewScreen.js +4 -4
  41. package/lib/commonjs/ui/screens/AccountSettingsScreen.js +5 -5
  42. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js +3 -3
  43. package/lib/commonjs/ui/screens/AppInfoScreen.js +6 -6
  44. package/lib/commonjs/ui/screens/BillingManagementScreen.js +3 -3
  45. package/lib/commonjs/ui/screens/FeedbackScreen.js +1169 -0
  46. package/lib/commonjs/ui/screens/FeedbackScreen.js.map +1 -0
  47. package/lib/commonjs/ui/screens/FileManagementScreen.js +3 -3
  48. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js +3 -3
  49. package/lib/commonjs/ui/screens/ProfileScreen.js +2 -2
  50. package/lib/commonjs/ui/screens/SessionManagementScreen.js +2 -2
  51. package/lib/commonjs/ui/screens/SignInScreen.js +182 -304
  52. package/lib/commonjs/ui/screens/SignInScreen.js.map +1 -1
  53. package/lib/commonjs/ui/screens/SignUpScreen.js +811 -712
  54. package/lib/commonjs/ui/screens/SignUpScreen.js.map +1 -1
  55. package/lib/commonjs/ui/screens/karma/KarmaCenterScreen.js +3 -3
  56. package/lib/commonjs/ui/screens/karma/KarmaLeaderboardScreen.js +2 -2
  57. package/lib/commonjs/ui/screens/karma/KarmaRulesScreen.js +1 -1
  58. package/lib/commonjs/ui/store/index.js +52 -0
  59. package/lib/commonjs/ui/store/index.js.map +1 -0
  60. package/lib/commonjs/ui/styles/index.js +2 -2
  61. package/lib/commonjs/ui/styles/theme.js +1 -1
  62. package/lib/commonjs/utils/index.js +1 -1
  63. package/lib/module/assets/assets/illustrations/HighFive.tsx +41 -0
  64. package/lib/module/assets/icons/OxyServices.js +1 -1
  65. package/lib/module/assets/icons/OxyServices.js.map +1 -1
  66. package/lib/module/assets/illustrations/HighFive.js +55 -0
  67. package/lib/module/assets/illustrations/HighFive.js.map +1 -0
  68. package/lib/module/core/index.js +2 -2
  69. package/lib/module/core/index.js.map +1 -1
  70. package/lib/module/index.js +10 -10
  71. package/lib/module/index.js.map +1 -1
  72. package/lib/module/node/createAuth.js +90 -0
  73. package/lib/module/node/createAuth.js.map +1 -0
  74. package/lib/module/node/index.js +8 -4
  75. package/lib/module/node/index.js.map +1 -1
  76. package/lib/module/package.json +1 -0
  77. package/lib/module/ui/components/Avatar.js +2 -2
  78. package/lib/module/ui/components/Avatar.js.map +1 -1
  79. package/lib/module/ui/components/FollowButton.js +3 -3
  80. package/lib/module/ui/components/FollowButton.js.map +1 -1
  81. package/lib/module/ui/components/GroupedSection.js +1 -1
  82. package/lib/module/ui/components/GroupedSection.js.map +1 -1
  83. package/lib/module/ui/components/OxyLogo.js +1 -1
  84. package/lib/module/ui/components/OxyLogo.js.map +1 -1
  85. package/lib/module/ui/components/OxyProvider.js +143 -138
  86. package/lib/module/ui/components/OxyProvider.js.map +1 -1
  87. package/lib/module/ui/components/OxySignInButton.js +2 -2
  88. package/lib/module/ui/components/OxySignInButton.js.map +1 -1
  89. package/lib/module/ui/components/ProfileCard.js +2 -2
  90. package/lib/module/ui/components/ProfileCard.js.map +1 -1
  91. package/lib/module/ui/components/Section.js +1 -1
  92. package/lib/module/ui/components/Section.js.map +1 -1
  93. package/lib/module/ui/components/SectionTitle.js +1 -1
  94. package/lib/module/ui/components/SectionTitle.js.map +1 -1
  95. package/lib/module/ui/components/icon/index.js +1 -1
  96. package/lib/module/ui/components/icon/index.js.map +1 -1
  97. package/lib/module/ui/components/index.js +12 -12
  98. package/lib/module/ui/components/index.js.map +1 -1
  99. package/lib/module/ui/components/internal/GroupedPillButtons.js +208 -0
  100. package/lib/module/ui/components/internal/GroupedPillButtons.js.map +1 -0
  101. package/lib/module/ui/components/internal/TextField.js +571 -0
  102. package/lib/module/ui/components/internal/TextField.js.map +1 -0
  103. package/lib/module/ui/context/OxyContext.js +1 -1
  104. package/lib/module/ui/context/OxyContext.js.map +1 -1
  105. package/lib/module/ui/index.js +12 -10
  106. package/lib/module/ui/index.js.map +1 -1
  107. package/lib/module/ui/navigation/OxyRouter.js +23 -18
  108. package/lib/module/ui/navigation/OxyRouter.js.map +1 -1
  109. package/lib/module/ui/screens/AccountCenterScreen.js +5 -5
  110. package/lib/module/ui/screens/AccountCenterScreen.js.map +1 -1
  111. package/lib/module/ui/screens/AccountManagementDemo.js +2 -2
  112. package/lib/module/ui/screens/AccountManagementDemo.js.map +1 -1
  113. package/lib/module/ui/screens/AccountOverviewScreen.js +4 -4
  114. package/lib/module/ui/screens/AccountOverviewScreen.js.map +1 -1
  115. package/lib/module/ui/screens/AccountSettingsScreen.js +5 -5
  116. package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
  117. package/lib/module/ui/screens/AccountSwitcherScreen.js +3 -3
  118. package/lib/module/ui/screens/AccountSwitcherScreen.js.map +1 -1
  119. package/lib/module/ui/screens/AppInfoScreen.js +6 -6
  120. package/lib/module/ui/screens/AppInfoScreen.js.map +1 -1
  121. package/lib/module/ui/screens/BillingManagementScreen.js +3 -3
  122. package/lib/module/ui/screens/BillingManagementScreen.js.map +1 -1
  123. package/lib/module/ui/screens/FeedbackScreen.js +1164 -0
  124. package/lib/module/ui/screens/FeedbackScreen.js.map +1 -0
  125. package/lib/module/ui/screens/FileManagementScreen.js +3 -3
  126. package/lib/module/ui/screens/FileManagementScreen.js.map +1 -1
  127. package/lib/module/ui/screens/PremiumSubscriptionScreen.js +3 -3
  128. package/lib/module/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
  129. package/lib/module/ui/screens/ProfileScreen.js +2 -2
  130. package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
  131. package/lib/module/ui/screens/SessionManagementScreen.js +2 -2
  132. package/lib/module/ui/screens/SessionManagementScreen.js.map +1 -1
  133. package/lib/module/ui/screens/SignInScreen.js +182 -304
  134. package/lib/module/ui/screens/SignInScreen.js.map +1 -1
  135. package/lib/module/ui/screens/SignUpScreen.js +810 -712
  136. package/lib/module/ui/screens/SignUpScreen.js.map +1 -1
  137. package/lib/module/ui/screens/karma/KarmaCenterScreen.js +3 -3
  138. package/lib/module/ui/screens/karma/KarmaCenterScreen.js.map +1 -1
  139. package/lib/module/ui/screens/karma/KarmaLeaderboardScreen.js +2 -2
  140. package/lib/module/ui/screens/karma/KarmaLeaderboardScreen.js.map +1 -1
  141. package/lib/module/ui/screens/karma/KarmaRulesScreen.js +1 -1
  142. package/lib/module/ui/screens/karma/KarmaRulesScreen.js.map +1 -1
  143. package/lib/module/ui/store/index.js +44 -0
  144. package/lib/module/ui/store/index.js.map +1 -0
  145. package/lib/module/ui/styles/index.js +2 -2
  146. package/lib/module/ui/styles/index.js.map +1 -1
  147. package/lib/module/ui/styles/theme.js +1 -1
  148. package/lib/module/ui/styles/theme.js.map +1 -1
  149. package/lib/module/utils/index.js +1 -1
  150. package/lib/module/utils/index.js.map +1 -1
  151. package/lib/typescript/assets/illustrations/HighFive.d.ts +9 -0
  152. package/lib/typescript/assets/illustrations/HighFive.d.ts.map +1 -0
  153. package/lib/typescript/node/createAuth.d.ts +7 -0
  154. package/lib/typescript/node/createAuth.d.ts.map +1 -0
  155. package/lib/typescript/node/index.d.ts +2 -0
  156. package/lib/typescript/node/index.d.ts.map +1 -1
  157. package/lib/typescript/types/expo-vector-icons.d.ts +3 -0
  158. package/lib/typescript/types/express.d.ts +5 -0
  159. package/lib/typescript/types/react-redux.d.ts +5 -0
  160. package/lib/typescript/ui/components/OxyProvider.d.ts.map +1 -1
  161. package/lib/typescript/ui/components/internal/GroupedPillButtons.d.ts +18 -0
  162. package/lib/typescript/ui/components/internal/GroupedPillButtons.d.ts.map +1 -0
  163. package/lib/typescript/ui/components/internal/TextField.d.ts +25 -0
  164. package/lib/typescript/ui/components/internal/TextField.d.ts.map +1 -0
  165. package/lib/typescript/ui/index.d.ts +2 -0
  166. package/lib/typescript/ui/index.d.ts.map +1 -1
  167. package/lib/typescript/ui/navigation/OxyRouter.d.ts.map +1 -1
  168. package/lib/typescript/ui/screens/FeedbackScreen.d.ts +5 -0
  169. package/lib/typescript/ui/screens/FeedbackScreen.d.ts.map +1 -0
  170. package/lib/typescript/ui/screens/SignInScreen.d.ts.map +1 -1
  171. package/lib/typescript/ui/screens/SignUpScreen.d.ts.map +1 -1
  172. package/lib/typescript/ui/store/index.d.ts +19 -0
  173. package/lib/typescript/ui/store/index.d.ts.map +1 -0
  174. package/package.json +10 -25
  175. package/src/assets/illustrations/HighFive.tsx +41 -0
  176. package/src/node/createAuth.ts +116 -0
  177. package/src/node/index.ts +4 -0
  178. package/src/types/expo-vector-icons.d.ts +3 -0
  179. package/src/types/express.d.ts +5 -0
  180. package/src/types/react-redux.d.ts +5 -0
  181. package/src/ui/components/OxyProvider.tsx +136 -135
  182. package/src/ui/components/internal/GroupedPillButtons.tsx +253 -0
  183. package/src/ui/components/internal/TextField.tsx +694 -0
  184. package/src/ui/index.ts +6 -2
  185. package/src/ui/navigation/OxyRouter.tsx +8 -3
  186. package/src/ui/screens/FeedbackScreen.tsx +1042 -0
  187. package/src/ui/screens/SignInScreen.tsx +179 -222
  188. package/src/ui/screens/SignUpScreen.tsx +772 -608
  189. package/src/ui/store/index.ts +51 -0
@@ -0,0 +1,208 @@
1
+ "use strict";
2
+
3
+ import React from 'react';
4
+ import { View, TouchableOpacity, Text, ActivityIndicator, StyleSheet } from 'react-native';
5
+ import { Ionicons } from '@expo/vector-icons';
6
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
7
+ const GroupedPillButtons = ({
8
+ buttons,
9
+ colors,
10
+ gap = 8
11
+ }) => {
12
+ const getButtonStyle = (button, index, totalButtons) => {
13
+ const baseStyle = {
14
+ flexDirection: 'row',
15
+ alignItems: 'center',
16
+ paddingVertical: 6,
17
+ paddingHorizontal: 12,
18
+ gap: 6,
19
+ minWidth: 70,
20
+ borderWidth: 1,
21
+ shadowOffset: {
22
+ width: 0,
23
+ height: 2
24
+ },
25
+ shadowOpacity: 0.1,
26
+ shadowRadius: 4,
27
+ elevation: 2
28
+ };
29
+
30
+ // Determine border radius based on position
31
+ let borderRadius = {
32
+ borderTopLeftRadius: 35,
33
+ borderBottomLeftRadius: 35,
34
+ borderTopRightRadius: 35,
35
+ borderBottomRightRadius: 35
36
+ };
37
+ if (totalButtons > 1) {
38
+ if (index === 0) {
39
+ // First button
40
+ borderRadius = {
41
+ borderTopLeftRadius: 35,
42
+ borderBottomLeftRadius: 35,
43
+ borderTopRightRadius: 12,
44
+ borderBottomRightRadius: 12
45
+ };
46
+ } else if (index === totalButtons - 1) {
47
+ // Last button
48
+ borderRadius = {
49
+ borderTopLeftRadius: 12,
50
+ borderBottomLeftRadius: 12,
51
+ borderTopRightRadius: 35,
52
+ borderBottomRightRadius: 35
53
+ };
54
+ } else {
55
+ // Middle button (if 3 buttons)
56
+ borderRadius = {
57
+ borderTopLeftRadius: 12,
58
+ borderBottomLeftRadius: 12,
59
+ borderTopRightRadius: 12,
60
+ borderBottomRightRadius: 12
61
+ };
62
+ }
63
+ }
64
+
65
+ // Determine colors based on variant
66
+ let backgroundColor = 'transparent';
67
+ let borderColor = colors.border;
68
+ let shadowColor = colors.border;
69
+ let textColor = colors.text;
70
+ switch (button.variant) {
71
+ case 'primary':
72
+ backgroundColor = colors.primary;
73
+ borderColor = colors.primary;
74
+ shadowColor = colors.primary;
75
+ textColor = '#FFFFFF';
76
+ break;
77
+ case 'secondary':
78
+ backgroundColor = colors.secondary || colors.primary;
79
+ borderColor = colors.secondary || colors.primary;
80
+ shadowColor = colors.secondary || colors.primary;
81
+ textColor = '#FFFFFF';
82
+ break;
83
+ case 'transparent':
84
+ default:
85
+ backgroundColor = 'transparent';
86
+ borderColor = colors.border;
87
+ shadowColor = colors.border;
88
+ textColor = colors.text;
89
+ break;
90
+ }
91
+ return {
92
+ ...baseStyle,
93
+ ...borderRadius,
94
+ backgroundColor,
95
+ borderColor,
96
+ shadowColor
97
+ };
98
+ };
99
+ const getTextStyle = (button, colors) => {
100
+ const baseTextStyle = {
101
+ fontSize: 15,
102
+ fontWeight: '600',
103
+ flex: 1
104
+ };
105
+ let textColor = colors.text;
106
+ switch (button.variant) {
107
+ case 'primary':
108
+ case 'secondary':
109
+ textColor = '#FFFFFF';
110
+ break;
111
+ case 'transparent':
112
+ default:
113
+ textColor = colors.text;
114
+ break;
115
+ }
116
+ return {
117
+ ...baseTextStyle,
118
+ color: textColor
119
+ };
120
+ };
121
+ const getIconColor = (button, colors) => {
122
+ switch (button.variant) {
123
+ case 'primary':
124
+ case 'secondary':
125
+ return '#FFFFFF';
126
+ case 'transparent':
127
+ default:
128
+ return colors.text;
129
+ }
130
+ };
131
+ const isBackButton = button => {
132
+ return button.text.toLowerCase().includes('back') || button.icon === 'arrow-back' || button.icon === 'chevron-back';
133
+ };
134
+ const renderButtonContent = (button, colors, index) => {
135
+ const iconColor = getIconColor(button, colors);
136
+ const isBack = isBackButton(button);
137
+ const isFirstButton = index === 0;
138
+ const isSingleButton = buttons.length === 1;
139
+ if (button.loading) {
140
+ return /*#__PURE__*/_jsx(ActivityIndicator, {
141
+ color: iconColor,
142
+ size: "small"
143
+ });
144
+ }
145
+
146
+ // Auto-detect icon placement based on button order and type
147
+ if (isSingleButton) {
148
+ // Single button: icon on right
149
+ return /*#__PURE__*/_jsxs(_Fragment, {
150
+ children: [/*#__PURE__*/_jsx(Text, {
151
+ style: getTextStyle(button, colors),
152
+ children: button.text
153
+ }), button.icon && /*#__PURE__*/_jsx(Ionicons, {
154
+ name: button.icon,
155
+ size: 16,
156
+ color: iconColor
157
+ })]
158
+ });
159
+ } else if (isFirstButton || isBack) {
160
+ // First button or back button: icon on left, text on right
161
+ return /*#__PURE__*/_jsxs(_Fragment, {
162
+ children: [button.icon && /*#__PURE__*/_jsx(Ionicons, {
163
+ name: button.icon,
164
+ size: 16,
165
+ color: iconColor
166
+ }), /*#__PURE__*/_jsx(Text, {
167
+ style: getTextStyle(button, colors),
168
+ children: button.text
169
+ })]
170
+ });
171
+ } else {
172
+ // Second button or forward/action button: text on left, icon on right
173
+ return /*#__PURE__*/_jsxs(_Fragment, {
174
+ children: [/*#__PURE__*/_jsx(Text, {
175
+ style: getTextStyle(button, colors),
176
+ children: button.text
177
+ }), button.icon && /*#__PURE__*/_jsx(Ionicons, {
178
+ name: button.icon,
179
+ size: 16,
180
+ color: iconColor
181
+ })]
182
+ });
183
+ }
184
+ };
185
+ return /*#__PURE__*/_jsx(View, {
186
+ style: [styles.container, {
187
+ gap
188
+ }],
189
+ children: buttons.map((button, index) => /*#__PURE__*/_jsx(TouchableOpacity, {
190
+ style: getButtonStyle(button, index, buttons.length),
191
+ onPress: button.onPress,
192
+ disabled: button.disabled || button.loading,
193
+ testID: button.testID,
194
+ children: renderButtonContent(button, colors, index)
195
+ }, index))
196
+ });
197
+ };
198
+ const styles = StyleSheet.create({
199
+ container: {
200
+ flexDirection: 'row',
201
+ justifyContent: 'center',
202
+ marginTop: 16,
203
+ marginBottom: 8,
204
+ width: '100%'
205
+ }
206
+ });
207
+ export default GroupedPillButtons;
208
+ //# sourceMappingURL=GroupedPillButtons.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","View","TouchableOpacity","Text","ActivityIndicator","StyleSheet","Ionicons","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","GroupedPillButtons","buttons","colors","gap","getButtonStyle","button","index","totalButtons","baseStyle","flexDirection","alignItems","paddingVertical","paddingHorizontal","minWidth","borderWidth","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","borderRadius","borderTopLeftRadius","borderBottomLeftRadius","borderTopRightRadius","borderBottomRightRadius","backgroundColor","borderColor","border","shadowColor","textColor","text","variant","primary","secondary","getTextStyle","baseTextStyle","fontSize","fontWeight","flex","color","getIconColor","isBackButton","toLowerCase","includes","icon","renderButtonContent","iconColor","isBack","isFirstButton","isSingleButton","length","loading","size","children","style","name","styles","container","map","onPress","disabled","testID","create","justifyContent","marginTop","marginBottom"],"sourceRoot":"../../../../../src","sources":["ui/components/internal/GroupedPillButtons.tsx"],"mappings":"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","ignoreList":[]}