@pelican-identity/react 2.0.23 → 2.0.24

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PelicanAuth.d.ts","sourceRoot":"","sources":["../../src/components/PelicanAuth.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAElE,QAAA,MAAM,WAAW,GAAI,QAAQ,mBAAmB,4CA8lB/C,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,433 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { useEffect } from "react";
3
+ import PelicanButton from "./PelicanButton";
4
+ import { usePelicanAuth } from "../hooks/usePelicanAuth";
5
+ import StoreIcons from "./StoreIcons";
6
+ const PelicanAuth = (config) => {
7
+ const { start, qr, state, deeplink, isProcessing, stop, error, successMessage, useQrInstead, } = usePelicanAuth({
8
+ projectId: config.projectId,
9
+ publicKey: config.publicKey,
10
+ authType: config.authType,
11
+ onClose: config.onClose,
12
+ continuousMode: config.continuousMode,
13
+ forceQRCode: config.forceQRCode,
14
+ onSuccess: (identity) => {
15
+ config.onSuccess(identity);
16
+ },
17
+ onError: (error) => {
18
+ config.onError?.(error);
19
+ },
20
+ });
21
+ useEffect(() => {
22
+ if (config.continuousMode) {
23
+ start();
24
+ }
25
+ }, [config.continuousMode]);
26
+ return (_jsxs(_Fragment, { children: [_jsx("style", { children: `@keyframes fadeUp {
27
+ from {
28
+ opacity: 0;
29
+ transform: translateY(20px);
30
+ }
31
+ to {
32
+ opacity: 1;
33
+ transform: translateY(0);
34
+ }
35
+ }
36
+
37
+ @keyframes spin {
38
+ to {
39
+ transform: rotate(360deg);
40
+ }
41
+ }
42
+
43
+ @keyframes successPulse {
44
+ 0%,
45
+ 100% {
46
+ transform: scale(1);
47
+ opacity: 1;
48
+ }
49
+ 50% {
50
+ transform: scale(1.05);
51
+ opacity: 0.9;
52
+ }
53
+ }
54
+
55
+ .auth-container {
56
+ width: 300px;
57
+ max-width: fit-content;
58
+ padding: 1rem;
59
+ margin-top: 0.3rem;
60
+ position: relative;
61
+ animation: fadeUp 0.5s ease-out;
62
+ background-color: #f9fafb;
63
+ border-radius: 2.5rem;
64
+ display: flex;
65
+ flex-direction: column;
66
+ justify-content: space-between;
67
+ align-items: center;
68
+ gap: 1rem;
69
+ min-height: 320px;
70
+ }
71
+ .js-auth-container {
72
+ width: 300px;
73
+ max-width: fit-content;
74
+ padding: 1rem;
75
+ margin-top: 0.3rem;
76
+ position: relative;
77
+ background-color: #f9fafb;
78
+ border-radius: 2.5rem;
79
+ display: flex;
80
+ flex-direction: column;
81
+ justify-content: space-between;
82
+ align-items: center;
83
+ gap: 1rem;
84
+ min-height: 320px;
85
+ }
86
+
87
+ .pelican-modal-close-btn {
88
+ all: unset; /* Reset all inherited styles */
89
+ background-color: #2b2b2b !important;
90
+ border: none !important;
91
+ padding: 0.3rem !important;
92
+ cursor: pointer !important;
93
+ transition: opacity 0.2s !important;
94
+ height: 1.5rem !important;
95
+ width: 1.5rem !important;
96
+ display: flex !important;
97
+ align-items: center !important;
98
+ justify-content: center !important;
99
+ border-radius: 50% !important;
100
+ box-sizing: border-box !important;
101
+ margin: 0 1rem !important;
102
+ }
103
+
104
+ .pelican-modal-close-btn:hover {
105
+ opacity: 0.6 !important;
106
+ }
107
+
108
+ .pelican-modal-close-btn svg {
109
+ display: block !important;
110
+ width: 100% !important;
111
+ height: 100% !important;
112
+ }
113
+
114
+ .retry-container {
115
+ text-align: center;
116
+ padding: 3rem 0;
117
+ }
118
+
119
+ .retry-container > div:first-child {
120
+ margin-bottom: 1rem;
121
+ }
122
+
123
+ .retry-text {
124
+ font-size: 1.125rem;
125
+ font-family: Onest, system-ui, Avenir, Helvetica, Arial, sans-serif;
126
+ }
127
+
128
+ .content-wrapper {
129
+ display: flex;
130
+ flex-direction: column;
131
+ justify-content: center;
132
+ align-items: center;
133
+ gap: 2rem;
134
+ }
135
+
136
+ .unpaired-container {
137
+ text-align: center;
138
+ display: flex;
139
+ flex-direction: column;
140
+ }
141
+
142
+ .main-heading {
143
+ font-size: 0.75rem;
144
+ font-weight: 600;
145
+ color: #585858;
146
+ font-family: Onest, system-ui, Avenir, Helvetica, Arial, sans-serif;
147
+ }
148
+
149
+ @media (min-width: 768px) {
150
+ .main-heading {
151
+ font-size: 1rem;
152
+ font-family: Onest, system-ui, Avenir, Helvetica, Arial, sans-serif;
153
+ }
154
+ }
155
+
156
+ @media (min-width: 1024px) {
157
+ .main-heading {
158
+ font-size: 1rem;
159
+ font-family: Onest, system-ui, Avenir, Helvetica, Arial, sans-serif;
160
+ }
161
+ }
162
+
163
+ .mobile-auth-container {
164
+ display: flex;
165
+ flex-direction: column;
166
+ gap: 0.7rem;
167
+ width: 253px;
168
+ }
169
+
170
+ .logo-container {
171
+ display: flex;
172
+ justify-content: center;
173
+ padding: 2rem 0;
174
+ }
175
+
176
+ .open-app-link {
177
+ display: inline-block;
178
+ padding: 0.75rem 1rem;
179
+ background-color: #2b2b2bff;
180
+ width: fit-content;
181
+ align-self: center;
182
+
183
+ border-radius: 18px;
184
+ color: #fff;
185
+ font-weight: 500;
186
+ font-size: 1rem;
187
+ text-decoration: none;
188
+ transition: background-color 0.2s;
189
+ font-family: Onest, system-ui, Avenir, Helvetica, Arial, sans-serif;
190
+ }
191
+
192
+ .open-app-link:hover {
193
+ opacity: 0.8;
194
+ }
195
+
196
+ .helper-text {
197
+ font-size: 0.75rem;
198
+ color: #6b7280;
199
+ font-family: Onest, system-ui, Avenir, Helvetica, Arial, sans-serif;
200
+ }
201
+
202
+ .qr-container {
203
+ display: flex;
204
+ justify-content: center;
205
+ }
206
+
207
+ .qr-wrapper {
208
+ display: flex;
209
+ justify-content: center;
210
+ align-items: center;
211
+ overflow: hidden;
212
+ border-radius: 2rem;
213
+ background-color: #fff;
214
+ padding: 0.2rem;
215
+ height: 244px;
216
+ width: 244px;
217
+ }
218
+
219
+ .qr-image {
220
+ height: 90%;
221
+ width: 90%;
222
+ }
223
+
224
+ .loader-container {
225
+ display: flex;
226
+ justify-content: center;
227
+ }
228
+
229
+ .instruction-text {
230
+ font-size: 0.875rem;
231
+ color: #9ca3af;
232
+ font-family: Onest, system-ui, Avenir, Helvetica, Arial, sans-serif;
233
+ }
234
+
235
+ .paired-container {
236
+ text-align: center;
237
+ display: flex;
238
+ flex-direction: column;
239
+ gap: 1rem;
240
+ max-width: 250px;
241
+ }
242
+
243
+ .paired-heading {
244
+ font-size: 1rem;
245
+ font-weight: 800;
246
+ font-family: Onest, system-ui, Avenir, Helvetica, Arial, sans-serif;
247
+ }
248
+
249
+ @media (min-width: 768px) {
250
+ .paired-heading {
251
+ font-size: 1rem;
252
+ font-family: Onest, system-ui, Avenir, Helvetica, Arial, sans-serif;
253
+ }
254
+ }
255
+
256
+ .success-message {
257
+ background-color: #121212;
258
+ color: #d9eb1b;
259
+ padding: 0.5rem 1rem;
260
+ border-radius: 1.3rem;
261
+ font-weight: 700;
262
+ font-size: 1rem;
263
+ animation: successPulse 0.2s ease-in-out;
264
+ margin: 0.5rem 0;
265
+ font-family: system-ui, Avenir, Helvetica, Arial, sans-serif;
266
+ width: 300px;
267
+ max-width: fit-content;
268
+ }
269
+
270
+ .auto-renew-badge {
271
+ display: inline-block;
272
+ background-color: rgba(217, 235, 27, 0.2);
273
+ border: 1px solid #d9eb1b;
274
+ color: #d9eb1b;
275
+ padding: 0.25rem 0.75rem;
276
+ border-radius: 9999px;
277
+ font-size: 0.75rem;
278
+ font-weight: 600;
279
+ margin-top: 0.5rem;
280
+ }
281
+
282
+ .scan-btn {
283
+ all: unset;
284
+ font-size: 0.8rem;
285
+ color: #626262ff;
286
+ font-weight: 600;
287
+ cursor: pointer;
288
+ font-family: system-ui, Avenir, Helvetica, Arial, sans-serif;
289
+ }
290
+ .error-wrapper {
291
+ display: flex;
292
+ justify-content: center;
293
+ align-items: center;
294
+ text-align: center;
295
+ border-radius: 1.5rem;
296
+ border: 1px solid rgb(255, 236, 236);
297
+ background-color: rgb(255, 255, 255);
298
+ width: 250px;
299
+ height: 80px;
300
+ }
301
+
302
+ .error-message {
303
+ font-size: 0.75rem;
304
+ font-weight: 400;
305
+ color: rgb(255, 139, 139);
306
+ font-family: Onest, system-ui, Avenir, Helvetica, Arial, sans-serif;
307
+ max-width: 70%;
308
+ }
309
+
310
+ .loader {
311
+ width: 48px;
312
+ height: 48px;
313
+ position: relative;
314
+ }
315
+ .loader::before,
316
+ .loader::after {
317
+ content: "";
318
+ position: absolute;
319
+ left: 50%;
320
+ top: 50%;
321
+ transform: translate(-50%, -50%);
322
+ width: 48em;
323
+ height: 48em;
324
+ background-image: radial-gradient(circle 10px, #585858 100%, transparent 0),
325
+ radial-gradient(circle 10px, #585858 100%, transparent 0),
326
+ radial-gradient(circle 10px, #585858 100%, transparent 0),
327
+ radial-gradient(circle 10px, #585858 100%, transparent 0),
328
+ radial-gradient(circle 10px, #585858 100%, transparent 0),
329
+ radial-gradient(circle 10px, #585858 100%, transparent 0),
330
+ radial-gradient(circle 10px, #585858 100%, transparent 0),
331
+ radial-gradient(circle 10px, #585858 100%, transparent 0),
332
+ radial-gradient(circle 10px, #585858 100%, transparent 0);
333
+ background-position: 0em -18em, 0em 18em, 18em 0em, -18em 0em, 13em -13em,
334
+ -13em -13em, 13em 13em, -13em 13em;
335
+ background-repeat: no-repeat;
336
+ font-size: 0.5px;
337
+ border-radius: 50%;
338
+ animation: blast 1s ease-in infinite;
339
+ }
340
+ .loader::after {
341
+ font-size: 1px;
342
+ background: #585858;
343
+ animation: bounce 1s ease-in infinite;
344
+ }
345
+
346
+ @keyframes bounce {
347
+ 0%,
348
+ 100% {
349
+ font-size: 0.75px;
350
+ }
351
+ 50% {
352
+ font-size: 1.5px;
353
+ }
354
+ }
355
+ @keyframes blast {
356
+ 0%,
357
+ 40% {
358
+ font-size: 0.5px;
359
+ }
360
+ 70% {
361
+ opacity: 1;
362
+ font-size: 4px;
363
+ }
364
+ 100% {
365
+ font-size: 6px;
366
+ opacity: 0;
367
+ }
368
+ }
369
+ ` }), _jsxs("section", { children: [_jsx("div", { style: {
370
+ width: "100%",
371
+ justifyContent: "space-between",
372
+ alignItems: "center",
373
+ maxWidth: "520px",
374
+ }, children: !config.continuousMode && (_jsxs("div", { style: {
375
+ width: "100%",
376
+ display: "flex",
377
+ justifyContent: "space-between",
378
+ alignItems: "center",
379
+ }, children: [_jsx("button", { type: "button", style: {
380
+ border: "none",
381
+ background: "transparent",
382
+ cursor: "pointer",
383
+ }, onClick: () => {
384
+ start();
385
+ }, disabled: config.continuousMode, children: config.buttonComponent ? (config.buttonComponent) : (_jsx(PelicanButton, { authType: config.authType, text: config.buttonText })) }), state !== "idle" && (_jsx("button", { onClick: () => {
386
+ stop();
387
+ config.onClose?.();
388
+ }, className: "pelican-modal-close-btn", "aria-label": "Close", type: "button", style: {
389
+ border: "none !important",
390
+ padding: "0.3rem !important",
391
+ cursor: "pointer !important",
392
+ }, children: _jsx("svg", { fill: "#fff", stroke: "#fff", viewBox: "0 0 24 24", role: "img", "aria-label": "close icon", children: _jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 3, d: "M6 18L18 6M6 6l12 12", height: "24", width: "24", fill: "#fff", stroke: "#fff", color: "#fff" }) }) }))] })) }), _jsx("div", { style: {
393
+ width: "100%",
394
+ display: "flex",
395
+ justifyContent: "center",
396
+ alignItems: "center",
397
+ maxWidth: "520px",
398
+ }, children: state !== "idle" && (_jsxs("div", { className: "auth-container", children: [successMessage && (_jsxs("div", { className: "success-message", style: { textAlign: "center" }, children: [successMessage, config.continuousMode && (_jsx("p", { style: {
399
+ fontSize: "0.8rem",
400
+ marginTop: "0.5rem",
401
+ color: "#f3f3f3",
402
+ textAlign: "center",
403
+ }, children: "Preparing next session..." }))] })), error && state === "error" && (_jsx("div", { className: "error-wrapper", children: _jsx("p", { className: "error-message", children: error.message }) })), isProcessing ? (_jsxs("div", { className: "content-wrapper", children: [_jsx("h2", { className: "main-heading", children: "one sec..." }), _jsx("span", { className: "loader", style: { margin: "1rem auto", width: "252px" } })] })) : (_jsx("div", { className: "content-wrapper", children: state === "awaiting-pair" && !successMessage && (_jsxs("div", { className: "unpaired-container", children: [!deeplink && !config.forceQRCode && (_jsx("h2", { className: "main-heading", children: "Open Pelican Vault" })), !config.forceQRCode && deeplink ? (_jsxs("div", { className: "mobile-auth-container", children: [_jsx("div", { className: "logo-container", children: _jsx("img", { src: "https://res.cloudinary.com/de0jr8mcm/image/upload/v1765904735/pelican/pelican_icon_r9ghqw.png ", alt: "Pelican Logo", style: { width: "80px", height: "80px" } }) }), _jsx("a", { href: deeplink, className: "open-app-link", children: "Open Pelican Vault" }), _jsxs("p", { className: "helper-text", children: ["Open the app to", " ", config.authType === "login"
404
+ ? "login"
405
+ : config.authType === "signup"
406
+ ? "signup"
407
+ : config.authType === "id-verification"
408
+ ? "verify identity"
409
+ : "authenticate"] }), _jsxs("div", { style: {
410
+ display: "flex",
411
+ alignItems: "center",
412
+ gap: "0.5rem",
413
+ }, children: [_jsx("div", { style: {
414
+ width: "100%",
415
+ height: "1px",
416
+ backgroundColor: "#e2e2e2ff",
417
+ } }), _jsx("p", { style: {
418
+ fontSize: "0.8rem",
419
+ fontFamily: "system-ui, Avenir, Helvetica, Arial, sans-serif",
420
+ color: "#a8a8a8ff",
421
+ }, children: "Or" }), _jsx("div", { style: {
422
+ width: "100%",
423
+ height: "1px",
424
+ backgroundColor: "#e2e2e2ff",
425
+ } })] }), _jsx("button", { type: "button", className: "scan-btn", onClick: useQrInstead, children: "Use QR Code" })] })) : (config.forceQRCode &&
426
+ qr &&
427
+ state === "awaiting-pair") ||
428
+ (!config.forceQRCode &&
429
+ qr &&
430
+ state === "awaiting-pair") ? (_jsx("div", { className: "qr-container", children: _jsxs("div", { className: "qr-wrapper", children: [qr && (_jsx("img", { src: qr, alt: "QR Code", className: "qr-image" })), !qr && _jsx("span", { className: "loader" })] }) })) : (_jsx("div", { className: "loader-container", children: _jsx("span", { className: "loader" }) }))] })) })), _jsx(StoreIcons, {})] })) })] })] }));
431
+ };
432
+ export default PelicanAuth;
433
+ //# sourceMappingURL=PelicanAuth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PelicanAuth.js","sourceRoot":"","sources":["../../src/components/PelicanAuth.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StoreIcons.d.ts","sourceRoot":"","sources":["../../src/components/StoreIcons.tsx"],"names":[],"mappings":"AAAA,QAAA,MAAM,UAAU,+CA6Ff,CAAC;AAiDF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,59 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ const StoreIcons = () => {
3
+ return (_jsx("div", { style: {
4
+ display: "flex",
5
+ justifyContent: "center",
6
+ alignItems: "center",
7
+ }, children: _jsxs("div", { style: {
8
+ display: "flex",
9
+ justifyContent: "center",
10
+ alignItems: "center",
11
+ borderRadius: "1.2rem",
12
+ gap: "0.3rem",
13
+ padding: "0.7rem 1rem",
14
+ height: "1.4rem",
15
+ }, children: [_jsx("div", { children: _jsx("p", { style: {
16
+ fontSize: "12px",
17
+ fontWeight: "500",
18
+ color: "#585858",
19
+ fontFamily: "Onest, system-ui, Avenir, Helvetica, Arial, sans-serif",
20
+ }, children: "Get Pelican Vault" }) }), _jsx("a", { href: "https://apps.apple.com/us/app/pelican-vault/id6755097751", target: "_blank", rel: "noopener noreferrer", children: _jsx("div", { style: {
21
+ display: "flex",
22
+ alignItems: "center",
23
+ justifyContent: "center",
24
+ gap: "0.4rem",
25
+ cursor: "pointer",
26
+ height: "28px",
27
+ width: "28px",
28
+ borderRadius: "0.7rem",
29
+ transition: "all 0.2s ease-in-out",
30
+ border: "1px solid #e5e7eb",
31
+ }, onMouseEnter: (e) => {
32
+ e.currentTarget.style.backgroundColor = "#f5f5f5";
33
+ }, onMouseLeave: (e) => {
34
+ e.currentTarget.style.backgroundColor = "transparent";
35
+ }, children: _jsx(Apple, {}) }) }), _jsx("a", { href: "https://play.google.com/store/apps/details?id=com.HeraculesDesignTechLtd.pelican", target: "_blank", rel: "noopener noreferrer", children: _jsx("div", { style: {
36
+ display: "flex",
37
+ alignItems: "center",
38
+ justifyContent: "center",
39
+ gap: "0.4rem",
40
+ cursor: "pointer",
41
+ height: "28px",
42
+ width: "28px",
43
+ borderRadius: "0.7rem",
44
+ transition: "all 0.2s ease-in-out",
45
+ border: "1px solid #e5e7eb",
46
+ }, onMouseEnter: (e) => {
47
+ e.currentTarget.style.backgroundColor = "#f5f5f5";
48
+ }, onMouseLeave: (e) => {
49
+ e.currentTarget.style.backgroundColor = "transparent";
50
+ }, children: _jsx(PlayStore, {}) }) })] }) }));
51
+ };
52
+ const Apple = () => {
53
+ return (_jsxs("svg", { width: "14", height: "14", viewBox: "0 0 32 32", fill: "none", xmlns: "http://www.w3.org/2000/svg", role: "img", "aria-label": "apple icon", children: [_jsx("g", { clipPath: "url(#clip0_10529_2674)", children: _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M22.0213 7.30124C24.1265 7.30124 26.358 8.45986 27.947 10.4637C22.7386 13.3501 23.5854 20.8709 28.8483 22.881C28.1232 24.5027 27.777 25.2278 26.8445 26.664C25.5424 28.6663 23.7101 31.1613 21.435 31.1831C19.4156 31.2018 18.8963 29.8529 16.155 29.8685C13.4136 29.8841 12.8413 31.2065 10.8219 31.1878C8.54832 31.1659 6.80962 28.9142 5.50754 26.9104C1.86795 21.3091 1.48746 14.7363 3.73297 11.2433C5.32821 8.7577 7.84348 7.3028 10.2106 7.3028C12.6199 7.3028 14.134 8.63919 16.1269 8.63919C18.0605 8.63919 19.2363 7.30124 22.0213 7.30124ZM21.4101 0.000244141C21.6907 1.89489 20.9204 3.75054 19.9084 5.06354C18.8246 6.4701 16.958 7.5601 15.1523 7.50396C14.8248 5.69041 15.67 3.82383 16.6961 2.56542C17.8235 1.17757 19.7571 0.115638 21.4101 0.000244141Z", fill: "#585858" }) }), _jsx("defs", { children: _jsx("clipPath", { id: "clip0_10529_2674", children: _jsx("rect", { width: "31.1875", height: "31.1875", fill: "#585858" }) }) })] }));
54
+ };
55
+ const PlayStore = () => {
56
+ return (_jsx("svg", { width: "12", height: "12", viewBox: "0 0 26 26", fill: "none", xmlns: "http://www.w3.org/2000/svg", role: "img", "aria-label": "play icon", children: _jsx("path", { d: "M0.015625 2.02546V24.3372C0.0157895 24.3856 0.0316774 24.4329 0.0612964 24.4731C0.0909154 24.5134 0.132947 24.5448 0.182121 24.5634C0.231294 24.582 0.285421 24.587 0.337713 24.5778C0.390006 24.5685 0.438136 24.5455 0.476069 24.5115L13.2604 13.1819L0.476069 1.85116C0.438136 1.81718 0.390006 1.79412 0.337713 1.7849C0.285421 1.77567 0.231294 1.78067 0.182121 1.79929C0.132947 1.8179 0.0909154 1.84929 0.0612964 1.88953C0.0316774 1.92976 0.0157895 1.97705 0.015625 2.02546ZM18.6208 8.52652L2.59086 0.501104L2.58086 0.495994C2.30472 0.359739 2.04233 0.699241 2.26849 0.896811L14.8342 11.8154L18.6208 8.52652ZM2.26974 25.467C2.04233 25.6645 2.30472 26.004 2.58211 25.8678L2.59211 25.8627L18.6208 17.8373L14.8342 14.5473L2.26974 25.467ZM25.092 11.7626L20.6156 9.52231L16.4067 13.1819L20.6156 16.8398L25.092 14.6012C26.3096 13.9898 26.3096 12.374 25.092 11.7626Z", fill: "#585858" }) }));
57
+ };
58
+ export default StoreIcons;
59
+ //# sourceMappingURL=StoreIcons.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StoreIcons.js","sourceRoot":"","sources":["../../src/components/StoreIcons.tsx"],"names":[],"mappings":"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"}