@joelbarron/react-web-dev-kit 0.1.4 → 0.1.5

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.
@@ -91,6 +91,7 @@ declare global {
91
91
  }) => void;
92
92
  login: (callback: (response: FacebookLoginResponse) => void, options?: {
93
93
  scope?: string;
94
+ display?: 'popup' | 'touch' | 'page';
94
95
  }) => void;
95
96
  };
96
97
  }
@@ -1 +1 @@
1
- {"version":3,"file":"providerAuth.d.ts","sourceRoot":"","sources":["../../../src/auth/social/providerAuth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE9D,KAAK,0BAA0B,GAAG;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,aAAa,GAAG,WAAW,GAAG,OAAO,GAAG,UAAU,CAAC;IAClE,YAAY,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,eAAe,CAAC;IACrD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,KAAK,kBAAkB,GAAG;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,wBAAwB,GAAG;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,KAAK,8BAA8B,GAAG;IACpC,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC;IAChC,iBAAiB,CAAC,EAAE,MAAM,OAAO,CAAC;IAClC,qBAAqB,CAAC,EAAE,MAAM,MAAM,CAAC;IACrC,gBAAgB,CAAC,EAAE,MAAM,MAAM,CAAC;IAChC,kBAAkB,CAAC,EAAE,MAAM,MAAM,CAAC;CACnC,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,aAAa,CAAC,EAAE;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;KAC3B,CAAC;CACH,CAAC;AAEF,KAAK,qBAAqB,GAAG;IAC3B,YAAY,CAAC,EAAE;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACH,CAAC;AAEF,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,MAAM,CAAC,EAAE;YACP,QAAQ,CAAC,EAAE;gBACT,EAAE,CAAC,EAAE;oBACH,UAAU,EAAE,CAAC,OAAO,EAAE;wBACpB,SAAS,EAAE,MAAM,CAAC;wBAClB,QAAQ,EAAE,CAAC,QAAQ,EAAE,wBAAwB,KAAK,IAAI,CAAC;qBACxD,KAAK,IAAI,CAAC;oBACX,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,YAAY,EAAE,8BAA8B,KAAK,IAAI,KAAK,IAAI,CAAC;oBACpF,MAAM,EAAE,MAAM,IAAI,CAAC;iBACpB,CAAC;gBACF,MAAM,CAAC,EAAE;oBACP,cAAc,EAAE,CAAC,OAAO,EAAE;wBACxB,SAAS,EAAE,MAAM,CAAC;wBAClB,KAAK,EAAE,MAAM,CAAC;wBACd,YAAY,CAAC,EAAE,MAAM,CAAC;wBACtB,OAAO,EAAE,OAAO,CAAC;wBACjB,QAAQ,EAAE,CAAC,QAAQ,EAAE,kBAAkB,KAAK,IAAI,CAAC;qBAClD,KAAK;wBAAE,WAAW,EAAE,MAAM,IAAI,CAAA;qBAAE,CAAC;iBACnC,CAAC;aACH,CAAC;SACH,CAAC;QACF,OAAO,CAAC,EAAE;YACR,IAAI,EAAE;gBACJ,IAAI,EAAE,CAAC,OAAO,EAAE;oBACd,QAAQ,EAAE,MAAM,CAAC;oBACjB,KAAK,EAAE,MAAM,CAAC;oBACd,WAAW,EAAE,MAAM,CAAC;oBACpB,QAAQ,EAAE,OAAO,CAAC;oBAClB,YAAY,CAAC,EAAE,aAAa,GAAG,WAAW,GAAG,OAAO,GAAG,UAAU,CAAC;oBAClE,YAAY,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,eAAe,CAAC;oBACrD,KAAK,CAAC,EAAE,MAAM,CAAC;oBACf,KAAK,CAAC,EAAE,MAAM,CAAC;iBAChB,KAAK,IAAI,CAAC;gBACX,MAAM,EAAE,MAAM,OAAO,CAAC,mBAAmB,CAAC,CAAC;aAC5C,CAAC;SACH,CAAC;QACF,EAAE,CAAC,EAAE;YACH,IAAI,EAAE,CAAC,OAAO,EAAE;gBACd,KAAK,EAAE,MAAM,CAAC;gBACd,MAAM,EAAE,OAAO,CAAC;gBAChB,KAAK,EAAE,OAAO,CAAC;gBACf,OAAO,EAAE,MAAM,CAAC;aACjB,KAAK,IAAI,CAAC;YACX,KAAK,EAAE,CACL,QAAQ,EAAE,CAAC,QAAQ,EAAE,qBAAqB,KAAK,IAAI,EACnD,OAAO,CAAC,EAAE;gBACR,KAAK,CAAC,EAAE,MAAM,CAAC;aAChB,KACE,IAAI,CAAC;SACX,CAAC;KACH;CACF;AAqND,eAAO,MAAM,8BAA8B,GACzC,UAAU,cAAc,EACxB,QAAQ,0BAA0B,KACjC,OAAO,CAAC,IAAI,CAAC,kBAAkB,EAAE,UAAU,GAAG,mBAAmB,GAAG,SAAS,GAAG,aAAa,GAAG,aAAa,GAAG,UAAU,CAAC,CAc7H,CAAC"}
1
+ {"version":3,"file":"providerAuth.d.ts","sourceRoot":"","sources":["../../../src/auth/social/providerAuth.ts"],"names":[],"mappings":"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"}
@@ -44,6 +44,13 @@ const ensureFacebookSdk = async (clientId) => {
44
44
  version: 'v20.0'
45
45
  });
46
46
  };
47
+ const isLikelyMobileBrowser = () => {
48
+ if (typeof navigator === 'undefined') {
49
+ return false;
50
+ }
51
+ const userAgent = navigator.userAgent || '';
52
+ return /Android|iPhone|iPad|iPod|IEMobile|Opera Mini/i.test(userAgent);
53
+ };
47
54
  const logSocialDebug = (enabled, message, payload) => {
48
55
  if (!enabled) {
49
56
  return;
@@ -150,13 +157,22 @@ const authenticateWithApple = async (config) => {
150
157
  };
151
158
  };
152
159
  const authenticateWithFacebook = async (config) => {
160
+ const shouldUsePopup = config.usePopup ?? !isLikelyMobileBrowser();
161
+ const resolvedDisplay = shouldUsePopup
162
+ ? 'popup'
163
+ : isLikelyMobileBrowser()
164
+ ? 'touch'
165
+ : 'page';
153
166
  logSocialDebug(config.debug, 'facebook provider auth start', {
154
- clientId: config.clientId
167
+ clientId: config.clientId,
168
+ display: resolvedDisplay,
169
+ usePopup: shouldUsePopup
155
170
  });
156
171
  await ensureFacebookSdk(config.clientId);
157
172
  const response = await new Promise((resolve) => {
158
173
  window.FB.login(resolve, {
159
- scope: config.scope ?? 'email,public_profile'
174
+ scope: config.scope ?? 'email,public_profile',
175
+ display: resolvedDisplay
160
176
  });
161
177
  });
162
178
  const accessToken = response.authResponse?.accessToken;
@@ -1 +1 @@
1
- {"version":3,"file":"AuthRoutePageWrapper.d.ts","sourceRoot":"","sources":["../../../src/auth/ui/AuthRoutePageWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAEjD,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAEzE,KAAK,yBAAyB,GAAG,oBAAoB,GAAG;IACtD,QAAQ,EAAE,SAAS,CAAC;IACpB,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC,mBAAmB,CAAC,EAAE,uBAAuB,CAAC;IAC9C,uBAAuB,CAAC,EAAE,aAAa,CAAC,uBAAuB,CAAC,CAAC;CAClE,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,2CA0FpE"}
1
+ {"version":3,"file":"AuthRoutePageWrapper.d.ts","sourceRoot":"","sources":["../../../src/auth/ui/AuthRoutePageWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAEjD,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAEzE,KAAK,yBAAyB,GAAG,oBAAoB,GAAG;IACtD,QAAQ,EAAE,SAAS,CAAC;IACpB,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC,mBAAmB,CAAC,EAAE,uBAAuB,CAAC;IAC9C,uBAAuB,CAAC,EAAE,aAAa,CAAC,uBAAuB,CAAC,CAAC;CAClE,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,2CAuFpE"}
@@ -33,10 +33,7 @@ export function AuthRoutePageWrapper(props) {
33
33
  borderColor: 'divider',
34
34
  display: 'flex',
35
35
  alignItems: 'center',
36
- justifyContent: {
37
- xs: 'center',
38
- lg: isSignOut ? 'center' : 'flex-start'
39
- }
36
+ justifyContent: 'center'
40
37
  }, children: children }), _jsx(Box, { sx: { display: { xs: 'none', lg: 'flex' }, width: '50%', minWidth: 0 }, children: _jsx(MessageSectionComponent, { ...(messageSectionProps ?? {}) }) })] }) }));
41
38
  }
42
39
  return (_jsxs(Box, { sx: {
@@ -1 +1 @@
1
- {"version":3,"file":"createConfig.d.ts","sourceRoot":"","sources":["../../src/config/createConfig.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EACf,WAAW,EACX,oBAAoB,EACpB,UAAU,EAEV,uBAAuB,EACvB,kBAAkB,EAElB,eAAe,EAChB,MAAM,SAAS,CAAC;AAEjB,eAAO,MAAM,iBAAiB,GAC5B,aAAa,oBAAoB,EACjC,YAAY,oBAAoB,KAC/B,WA6BF,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,YAAY,eAAe,EAAE,OAAO,UAAU,KAAG,MAEtF,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,CAAC,EAC7B,UAAU,eAAe,CAAC,CAAC,CAAC,GAAG,SAAS,EACxC,OAAO,UAAU,EACjB,WAAW,CAAC,KACX,CAAC,GAAG,SAQN,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,QAAQ,WAAW,KAAG,MAEnD,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,CAAC,EACnC,QAAQ,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,EAClC,UAAU,eAAe,CAAC,CAAC,CAAC,GAAG,SAAS,EACxC,WAAW,CAAC,KACX,CAAC,GAAG,SAEN,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,aAAa,oBAAoB,EACjC,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,KACvC,WA2EF,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,QAAQ,WAAW,KAAG,MAErD,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,QAAQ,WAAW,KAAG,uBAAuB,EAEhF,CAAC;AAEF,eAAO,MAAM,yBAAyB,GAAI,QAAQ,WAAW,KAAG,uBAAuB,EAEtF,CAAC;AAEF,eAAO,MAAM,yBAAyB,GAAI,QAAQ,WAAW,KAAG,MAAM,GAAG,SAExE,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,QAAQ,WAAW,KAAG,kBAEzD,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,QAAQ,WAAW,KAAG,OAE5D,CAAC"}
1
+ {"version":3,"file":"createConfig.d.ts","sourceRoot":"","sources":["../../src/config/createConfig.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EACf,WAAW,EACX,oBAAoB,EACpB,UAAU,EAEV,uBAAuB,EACvB,kBAAkB,EAElB,eAAe,EAChB,MAAM,SAAS,CAAC;AAEjB,eAAO,MAAM,iBAAiB,GAC5B,aAAa,oBAAoB,EACjC,YAAY,oBAAoB,KAC/B,WA6BF,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,YAAY,eAAe,EAAE,OAAO,UAAU,KAAG,MAEtF,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,CAAC,EAC7B,UAAU,eAAe,CAAC,CAAC,CAAC,GAAG,SAAS,EACxC,OAAO,UAAU,EACjB,WAAW,CAAC,KACX,CAAC,GAAG,SAQN,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,QAAQ,WAAW,KAAG,MAEnD,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,CAAC,EACnC,QAAQ,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,EAClC,UAAU,eAAe,CAAC,CAAC,CAAC,GAAG,SAAS,EACxC,WAAW,CAAC,KACX,CAAC,GAAG,SAEN,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,aAAa,oBAAoB,EACjC,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,KACvC,WA+FF,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,QAAQ,WAAW,KAAG,MAErD,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,QAAQ,WAAW,KAAG,uBAAuB,EAEhF,CAAC;AAEF,eAAO,MAAM,yBAAyB,GAAI,QAAQ,WAAW,KAAG,uBAAuB,EAEtF,CAAC;AAEF,eAAO,MAAM,yBAAyB,GAAI,QAAQ,WAAW,KAAG,MAAM,GAAG,SAExE,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,QAAQ,WAAW,KAAG,kBAEzD,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,QAAQ,WAAW,KAAG,OAE5D,CAAC"}
@@ -41,6 +41,32 @@ export const getConfigStageValue = (config, stageMap, fallback) => {
41
41
  };
42
42
  export const createJBWebConfigFromEnv = (baseConfig, env) => {
43
43
  const runtimeEnv = env ?? {};
44
+ const parseEnvList = (value) => {
45
+ if (!value) {
46
+ return undefined;
47
+ }
48
+ const normalizedValue = value.trim();
49
+ if (!normalizedValue) {
50
+ return undefined;
51
+ }
52
+ if (normalizedValue.startsWith('[') && normalizedValue.endsWith(']')) {
53
+ try {
54
+ const parsed = JSON.parse(normalizedValue);
55
+ if (Array.isArray(parsed)) {
56
+ return parsed
57
+ .map((item) => String(item).trim())
58
+ .filter(Boolean);
59
+ }
60
+ }
61
+ catch {
62
+ // If JSON parsing fails, continue with comma-separated parsing.
63
+ }
64
+ }
65
+ return normalizedValue
66
+ .split(',')
67
+ .map((item) => item.trim())
68
+ .filter(Boolean);
69
+ };
44
70
  const parseBooleanEnv = (value) => {
45
71
  if (typeof value === 'undefined') {
46
72
  return undefined;
@@ -71,30 +97,21 @@ export const createJBWebConfigFromEnv = (baseConfig, env) => {
71
97
  clientId: runtimeEnv.VITE_AUTH_SOCIAL_GOOGLE_CLIENT_ID,
72
98
  redirectUri: runtimeEnv.VITE_AUTH_SOCIAL_GOOGLE_REDIRECT_URI,
73
99
  scope: runtimeEnv.VITE_AUTH_SOCIAL_GOOGLE_SCOPE,
74
- scopes: runtimeEnv.VITE_AUTH_SOCIAL_GOOGLE_SCOPES
75
- ?.split(',')
76
- .map((item) => item.trim())
77
- .filter(Boolean)
100
+ scopes: parseEnvList(runtimeEnv.VITE_AUTH_SOCIAL_GOOGLE_SCOPES)
78
101
  },
79
102
  facebook: {
80
103
  ...(typeof facebookEnabled === 'boolean' ? { enabled: facebookEnabled } : {}),
81
104
  clientId: runtimeEnv.VITE_AUTH_SOCIAL_FACEBOOK_CLIENT_ID,
82
105
  redirectUri: runtimeEnv.VITE_AUTH_SOCIAL_FACEBOOK_REDIRECT_URI,
83
106
  scope: runtimeEnv.VITE_AUTH_SOCIAL_FACEBOOK_SCOPE,
84
- scopes: runtimeEnv.VITE_AUTH_SOCIAL_FACEBOOK_SCOPES
85
- ?.split(',')
86
- .map((item) => item.trim())
87
- .filter(Boolean)
107
+ scopes: parseEnvList(runtimeEnv.VITE_AUTH_SOCIAL_FACEBOOK_SCOPES)
88
108
  },
89
109
  apple: {
90
110
  ...(typeof appleEnabled === 'boolean' ? { enabled: appleEnabled } : {}),
91
111
  clientId: runtimeEnv.VITE_AUTH_SOCIAL_APPLE_CLIENT_ID,
92
112
  redirectUri: runtimeEnv.VITE_AUTH_SOCIAL_APPLE_REDIRECT_URI,
93
113
  scope: runtimeEnv.VITE_AUTH_SOCIAL_APPLE_SCOPE,
94
- scopes: runtimeEnv.VITE_AUTH_SOCIAL_APPLE_SCOPES
95
- ?.split(',')
96
- .map((item) => item.trim())
97
- .filter(Boolean),
114
+ scopes: parseEnvList(runtimeEnv.VITE_AUTH_SOCIAL_APPLE_SCOPES),
98
115
  usePopup: parseBooleanEnv(runtimeEnv.VITE_AUTH_SOCIAL_APPLE_USE_POPUP),
99
116
  responseMode: runtimeEnv.VITE_AUTH_SOCIAL_APPLE_RESPONSE_MODE,
100
117
  responseType: runtimeEnv.VITE_AUTH_SOCIAL_APPLE_RESPONSE_TYPE,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@joelbarron/react-web-dev-kit",
3
- "version": "0.1.4",
3
+ "version": "0.1.5",
4
4
  "private": false,
5
5
  "sideEffects": false,
6
6
  "main": "dist/index.js",