onairos 0.1.351 → 0.1.352

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.
@@ -11,60 +11,101 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
11
11
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
12
12
  function GoogleButton(_ref) {
13
13
  let {
14
- onLoginSuccess
14
+ onLoginSuccess = () => {}
15
15
  } = _ref;
16
+ const [error, setError] = (0, _react.useState)(null);
16
17
  const handleTelegramAuth = (0, _react.useCallback)(async () => {
18
+ setError(null);
19
+
20
+ // Check if we're in a Telegram Web App environment
21
+ if (typeof window !== 'undefined' && !window.Telegram?.WebApp) {
22
+ setError('Not running in Telegram Web App');
23
+ return;
24
+ }
25
+
26
+ // Check SDK initialization
17
27
  if (!_sdk.miniApp.isInitialized) {
18
- console.error('Telegram Mini App not initialized');
28
+ setError('Telegram Mini App not initialized');
19
29
  return;
20
30
  }
21
31
  try {
22
- // Get Telegram Mini App data
23
- const telegramAppUrl = _sdk.miniApp.initData;
32
+ // Safely get Telegram Mini App data
33
+ const telegramAppUrl = _sdk.miniApp.initData || '';
24
34
  const botUsername = 'OnairosMiniApp';
25
35
 
26
- // Construct URL to your Othent connect page
27
- const connectUrl = new URL('https://onairos.uk/othent-connect');
28
- connectUrl.searchParams.append('tgAppUrl', encodeURIComponent(JSON.stringify(telegramAppUrl)));
29
- connectUrl.searchParams.append('botUsername', botUsername);
36
+ // Log debug information
37
+ console.log('Telegram App URL:', telegramAppUrl);
38
+ console.log('Bot Username:', botUsername);
30
39
 
31
- // Open in external browser
32
- await (0, _sdk.openLink)(connectUrl.toString(), {
33
- tryInstantView: false
34
- });
40
+ // Construct URL with error handling
41
+ let connectUrl;
42
+ try {
43
+ connectUrl = new URL('https://onairos.uk/othent-connect');
44
+ connectUrl.searchParams.append('tgAppUrl', encodeURIComponent(telegramAppUrl));
45
+ connectUrl.searchParams.append('botUsername', botUsername);
46
+ } catch (urlError) {
47
+ setError('Error constructing URL: ' + urlError.message);
48
+ return;
49
+ }
35
50
 
36
- // Listen for app becoming active again
51
+ // Register event listener before opening link
37
52
  const handleAppActive = () => {
38
- const startParam = _sdk.miniApp.initDataUnsafe?.start_param;
39
- if (startParam) {
40
- try {
53
+ try {
54
+ const startParam = _sdk.miniApp.initDataUnsafe?.start_param;
55
+ console.log('Start param received:', startParam);
56
+ if (startParam) {
41
57
  const authData = JSON.parse(decodeURIComponent(startParam));
42
58
  if (authData) {
43
59
  onLoginSuccess(authData);
44
60
  }
45
- } catch (error) {
46
- console.error('Error processing auth data:', error);
47
61
  }
62
+ } catch (error) {
63
+ setError('Error processing auth data: ' + error.message);
64
+ } finally {
65
+ _sdk.miniApp.removeEvent('active', handleAppActive);
48
66
  }
49
- _sdk.miniApp.removeEvent('active', handleAppActive);
50
67
  };
51
68
  _sdk.miniApp.onEvent('active', handleAppActive);
69
+
70
+ // Open link with error handling
71
+ await (0, _sdk.openLink)(connectUrl.toString(), {
72
+ tryInstantView: false
73
+ });
52
74
  } catch (error) {
53
- console.error('Telegram auth flow failed:', error);
75
+ setError('Auth flow failed: ' + error.message);
76
+ console.error('Full error:', error);
54
77
  }
55
78
  }, [onLoginSuccess]);
56
- return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
79
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
57
80
  className: "flex flex-col items-center",
58
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("button", {
81
+ children: [error && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
82
+ className: "text-red-500 text-sm mb-2 px-4 py-2 bg-red-50 rounded",
83
+ children: error
84
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("button", {
59
85
  onClick: handleTelegramAuth,
60
- className: "flex items-center justify-center px-4 py-2 border border-gray-300 rounded-full shadow-sm bg-white hover:bg-gray-50",
61
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("img", {
62
- src: "https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png",
63
- alt: "Google",
64
- className: "w-5 h-5 mr-2"
86
+ className: "flex items-center justify-center px-4 py-2 border border-gray-300 rounded-full shadow-sm bg-white hover:bg-gray-50 relative",
87
+ type: "button",
88
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("svg", {
89
+ viewBox: "0 0 24 24",
90
+ className: "w-5 h-5 mr-2",
91
+ fill: "#4285F4",
92
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("path", {
93
+ d: "M22.56 12.25c0-.78-.07-1.53-.2-2.25H12v4.26h5.92c-.26 1.37-1.04 2.53-2.21 3.31v2.77h3.57c2.08-1.92 3.28-4.74 3.28-8.09z",
94
+ fill: "#4285F4"
95
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("path", {
96
+ d: "M12 23c2.97 0 5.46-.98 7.28-2.66l-3.57-2.77c-.98.66-2.23 1.06-3.71 1.06-2.86 0-5.29-1.93-6.16-4.53H2.18v2.84C3.99 20.53 7.7 23 12 23z",
97
+ fill: "#34A853"
98
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("path", {
99
+ d: "M5.84 14.09c-.22-.66-.35-1.36-.35-2.09s.13-1.43.35-2.09V7.07H2.18C1.43 8.55 1 10.22 1 12s.43 3.45 1.18 4.93l2.85-2.22.81-.62z",
100
+ fill: "#FBBC05"
101
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("path", {
102
+ d: "M12 5.38c1.62 0 3.06.56 4.21 1.64l3.15-3.15C17.45 2.09 14.97 1 12 1 7.7 1 3.99 3.47 2.18 7.07l3.66 2.84c.87-2.6 3.3-4.53 6.16-4.53z",
103
+ fill: "#EA4335"
104
+ })]
65
105
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
106
+ className: "text-gray-700",
66
107
  children: "Continue with Google"
67
108
  })]
68
- })
109
+ })]
69
110
  });
70
111
  }