@bounded-sh/client 0.0.102 → 0.0.104
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.
- package/dist/auth/providers/offchain-auth-provider.d.ts +7 -9
- package/dist/{email-auth-provider-DCZ93FYg.js → email-auth-provider-CGhDN-8d.js} +2 -2
- package/dist/{email-auth-provider-DCZ93FYg.js.map → email-auth-provider-CGhDN-8d.js.map} +1 -1
- package/dist/{email-auth-provider-Ct3YA68i.mjs → email-auth-provider-CdBqgLWw.mjs} +2 -2
- package/dist/{email-auth-provider-Ct3YA68i.mjs.map → email-auth-provider-CdBqgLWw.mjs.map} +1 -1
- package/dist/{email-auth-provider-BJXeBUwp.mjs → email-auth-provider-DA2dPFXt.mjs} +2 -2
- package/dist/{email-auth-provider-BJXeBUwp.mjs.map → email-auth-provider-DA2dPFXt.mjs.map} +1 -1
- package/dist/{email-auth-provider-Cr3I4Po5.js → email-auth-provider-aMa0EDuc.js} +2 -2
- package/dist/{email-auth-provider-Cr3I4Po5.js.map → email-auth-provider-aMa0EDuc.js.map} +1 -1
- package/dist/{guest-auth-provider--Sqlucfr.js → guest-auth-provider-BT9JPOpp.js} +2 -2
- package/dist/{guest-auth-provider--Sqlucfr.js.map → guest-auth-provider-BT9JPOpp.js.map} +1 -1
- package/dist/{guest-auth-provider-CUo6sgop.mjs → guest-auth-provider-BiWPelOD.mjs} +2 -2
- package/dist/{guest-auth-provider-CUo6sgop.mjs.map → guest-auth-provider-BiWPelOD.mjs.map} +1 -1
- package/dist/{guest-auth-provider-CPj-w7_R.js → guest-auth-provider-Ca50pehK.js} +2 -2
- package/dist/{guest-auth-provider-CPj-w7_R.js.map → guest-auth-provider-Ca50pehK.js.map} +1 -1
- package/dist/{guest-auth-provider-DMtDTZeA.mjs → guest-auth-provider-pDVr5YRg.mjs} +2 -2
- package/dist/{guest-auth-provider-DMtDTZeA.mjs.map → guest-auth-provider-pDVr5YRg.mjs.map} +1 -1
- package/dist/{index-CaZx7sd8.mjs → index-DKkAO0g-.mjs} +16 -358
- package/dist/index-DKkAO0g-.mjs.map +1 -0
- package/dist/{index-Pyb2SLgv.js → index-DTBxbfUl.js} +16 -358
- package/dist/index-DTBxbfUl.js.map +1 -0
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/dist/{index.native-3T0IcOed.mjs → index.native-Bl2W-Wsi.mjs} +15 -357
- package/dist/index.native-Bl2W-Wsi.mjs.map +1 -0
- package/dist/{index.native-PGrxu7RO.js → index.native-CNW3iAoP.js} +15 -357
- package/dist/index.native-CNW3iAoP.js.map +1 -0
- package/dist/index.native.js +1 -1
- package/dist/index.native.mjs +1 -1
- package/dist/{injected-evm-wallet-provider-U0XJu5HM.js → injected-evm-wallet-provider-B8PWHQdb.js} +2 -2
- package/dist/{injected-evm-wallet-provider-U0XJu5HM.js.map → injected-evm-wallet-provider-B8PWHQdb.js.map} +1 -1
- package/dist/{injected-evm-wallet-provider-B3Mtkdnu.mjs → injected-evm-wallet-provider-BPkcFSQX.mjs} +2 -2
- package/dist/{injected-evm-wallet-provider-B3Mtkdnu.mjs.map → injected-evm-wallet-provider-BPkcFSQX.mjs.map} +1 -1
- package/dist/{injected-evm-wallet-provider-BNu6Z-iN.js → injected-evm-wallet-provider-Cym2uENX.js} +2 -2
- package/dist/{injected-evm-wallet-provider-BNu6Z-iN.js.map → injected-evm-wallet-provider-Cym2uENX.js.map} +1 -1
- package/dist/{injected-evm-wallet-provider-C8rBnyO1.mjs → injected-evm-wallet-provider-HbgMQAbf.mjs} +2 -2
- package/dist/{injected-evm-wallet-provider-C8rBnyO1.mjs.map → injected-evm-wallet-provider-HbgMQAbf.mjs.map} +1 -1
- package/dist/{injected-wallet-provider-DR8xVudg.mjs → injected-wallet-provider-BGeNaoEY.mjs} +2 -2
- package/dist/{injected-wallet-provider-DR8xVudg.mjs.map → injected-wallet-provider-BGeNaoEY.mjs.map} +1 -1
- package/dist/{injected-wallet-provider-BnmYbm79.mjs → injected-wallet-provider-D39pzPTV.mjs} +2 -2
- package/dist/{injected-wallet-provider-BnmYbm79.mjs.map → injected-wallet-provider-D39pzPTV.mjs.map} +1 -1
- package/dist/{injected-wallet-provider-29eTkM-A.js → injected-wallet-provider-FY9JLEPR.js} +2 -2
- package/dist/{injected-wallet-provider-29eTkM-A.js.map → injected-wallet-provider-FY9JLEPR.js.map} +1 -1
- package/dist/{injected-wallet-provider-Cv9RELO6.js → injected-wallet-provider-oWtACL_7.js} +2 -2
- package/dist/{injected-wallet-provider-Cv9RELO6.js.map → injected-wallet-provider-oWtACL_7.js.map} +1 -1
- package/package.json +2 -2
- package/dist/index-CaZx7sd8.mjs.map +0 -1
- package/dist/index-Pyb2SLgv.js.map +0 -1
- package/dist/index.native-3T0IcOed.mjs.map +0 -1
- package/dist/index.native-PGrxu7RO.js.map +0 -1
|
@@ -202,10 +202,14 @@ function getPlatform() {
|
|
|
202
202
|
}
|
|
203
203
|
|
|
204
204
|
/**
|
|
205
|
-
* OffchainAuthProvider wraps a real auth provider (
|
|
205
|
+
* OffchainAuthProvider wraps a real auth provider (Turnkey, Phantom, ...) for the
|
|
206
|
+
* poofnet environment.
|
|
206
207
|
*
|
|
207
|
-
*
|
|
208
|
-
*
|
|
208
|
+
* Poofnet has no chain, but its onchain writes are still signed: the worker
|
|
209
|
+
* issues an unsendable approval message and verifies the wallet's signature
|
|
210
|
+
* before committing. So `signTransaction` and `signMessage` go straight to the
|
|
211
|
+
* wrapped wallet, whose own prompt is the only one the user sees. Only a raw
|
|
212
|
+
* submit - which needs a real cluster - is refused here.
|
|
209
213
|
*/
|
|
210
214
|
class OffchainAuthProvider {
|
|
211
215
|
constructor(wrappedProvider, config = {}) {
|
|
@@ -240,10 +244,7 @@ class OffchainAuthProvider {
|
|
|
240
244
|
return null;
|
|
241
245
|
}
|
|
242
246
|
async signTransaction(tx) {
|
|
243
|
-
|
|
244
|
-
await this.showUnsupportedTransactionModal();
|
|
245
|
-
}
|
|
246
|
-
throw new Error('Poofnet does not support real Solana transactions. Deploy your project to mainnet to use this feature.');
|
|
247
|
+
return this.wrappedProvider.signTransaction(tx);
|
|
247
248
|
}
|
|
248
249
|
/**
|
|
249
250
|
* Sign and submit transaction - not supported in poofnet environment.
|
|
@@ -268,21 +269,11 @@ class OffchainAuthProvider {
|
|
|
268
269
|
}
|
|
269
270
|
await this.wrappedProvider.exportWallet(address);
|
|
270
271
|
}
|
|
271
|
-
// ============ signMessage delegates to wrapped provider ============
|
|
272
272
|
async signMessage(message) {
|
|
273
273
|
var _a, _b, _c, _d, _e, _f;
|
|
274
274
|
(_b = (_a = this.config).onSigningStart) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
275
275
|
try {
|
|
276
|
-
// On RN (no DOM), auto-confirm — there's no modal to show.
|
|
277
|
-
// On web, show the confirmation modal.
|
|
278
|
-
if (getPlatform().hasDOM) {
|
|
279
|
-
const confirmed = await this.showTransactionModal(message);
|
|
280
|
-
if (!confirmed) {
|
|
281
|
-
throw new Error("Transaction rejected by user");
|
|
282
|
-
}
|
|
283
|
-
}
|
|
284
276
|
const signature = await this.wrappedProvider.signMessage(message);
|
|
285
|
-
// Callback: signing complete
|
|
286
277
|
(_d = (_c = this.config).onSigningComplete) === null || _d === void 0 ? void 0 : _d.call(_c, signature);
|
|
287
278
|
return signature;
|
|
288
279
|
}
|
|
@@ -373,99 +364,6 @@ class OffchainAuthProvider {
|
|
|
373
364
|
document.addEventListener("keydown", escHandler);
|
|
374
365
|
});
|
|
375
366
|
}
|
|
376
|
-
async showTransactionModal(message) {
|
|
377
|
-
return new Promise((resolve) => {
|
|
378
|
-
// Parse the transaction message for display
|
|
379
|
-
let parsed = {};
|
|
380
|
-
try {
|
|
381
|
-
parsed = JSON.parse(message);
|
|
382
|
-
}
|
|
383
|
-
catch (_a) {
|
|
384
|
-
// If not JSON, just show raw message
|
|
385
|
-
}
|
|
386
|
-
// Create modal container. Captured in this closure so every teardown
|
|
387
|
-
// path acts on exactly this prompt, never on a newer one that may have
|
|
388
|
-
// replaced a shared field.
|
|
389
|
-
const container = document.createElement("div");
|
|
390
|
-
container.id = "poofnet-tx-modal";
|
|
391
|
-
container.appendChild(this.buildTransactionModalContent(parsed, message));
|
|
392
|
-
document.body.appendChild(container);
|
|
393
|
-
// Add styles
|
|
394
|
-
const style = document.createElement("style");
|
|
395
|
-
style.textContent = this.getModalStyles();
|
|
396
|
-
container.appendChild(style);
|
|
397
|
-
// Mark all OTHER body children as inert to disable focus traps from
|
|
398
|
-
// other modals, recording only the ones this modal changed (skipping
|
|
399
|
-
// any already-inert) so cleanup restores exactly what we set and never
|
|
400
|
-
// re-enables app-owned inert regions.
|
|
401
|
-
const selfInerted = [];
|
|
402
|
-
document.body.childNodes.forEach((child) => {
|
|
403
|
-
if (child !== container &&
|
|
404
|
-
child instanceof HTMLElement &&
|
|
405
|
-
!child.hasAttribute("inert")) {
|
|
406
|
-
child.setAttribute("inert", "");
|
|
407
|
-
selfInerted.push(child);
|
|
408
|
-
}
|
|
409
|
-
});
|
|
410
|
-
// Animate in
|
|
411
|
-
requestAnimationFrame(() => {
|
|
412
|
-
const overlay = container.querySelector(".poofnet-modal-overlay");
|
|
413
|
-
const content = container.querySelector(".poofnet-modal-content");
|
|
414
|
-
if (overlay)
|
|
415
|
-
overlay.style.opacity = "1";
|
|
416
|
-
if (content) {
|
|
417
|
-
content.style.opacity = "1";
|
|
418
|
-
content.style.transform = "translateY(0)";
|
|
419
|
-
}
|
|
420
|
-
});
|
|
421
|
-
// Single idempotent teardown for every settlement path: removes the key
|
|
422
|
-
// handler, restores only self-added inert, and removes exactly this
|
|
423
|
-
// captured container after the exit animation.
|
|
424
|
-
let settled = false;
|
|
425
|
-
const escHandler = (e) => {
|
|
426
|
-
if (e.key === "Escape")
|
|
427
|
-
settle(false);
|
|
428
|
-
};
|
|
429
|
-
const cleanup = () => {
|
|
430
|
-
if (settled)
|
|
431
|
-
return;
|
|
432
|
-
settled = true;
|
|
433
|
-
document.removeEventListener("keydown", escHandler);
|
|
434
|
-
for (const el of selfInerted)
|
|
435
|
-
el.removeAttribute("inert");
|
|
436
|
-
const overlay = container.querySelector(".poofnet-modal-overlay");
|
|
437
|
-
const content = container.querySelector(".poofnet-modal-content");
|
|
438
|
-
if (overlay)
|
|
439
|
-
overlay.style.opacity = "0";
|
|
440
|
-
if (content) {
|
|
441
|
-
content.style.opacity = "0";
|
|
442
|
-
content.style.transform = "translateY(20px)";
|
|
443
|
-
}
|
|
444
|
-
setTimeout(() => container.remove(), 200);
|
|
445
|
-
};
|
|
446
|
-
const settle = (confirmed) => {
|
|
447
|
-
cleanup();
|
|
448
|
-
resolve(confirmed);
|
|
449
|
-
};
|
|
450
|
-
// Handle confirm
|
|
451
|
-
const confirmBtn = container.querySelector("#poofnet-confirm-btn");
|
|
452
|
-
confirmBtn === null || confirmBtn === void 0 ? void 0 : confirmBtn.addEventListener("click", () => settle(true));
|
|
453
|
-
// Handle cancel
|
|
454
|
-
const cancelBtn = container.querySelector("#poofnet-cancel-btn");
|
|
455
|
-
cancelBtn === null || cancelBtn === void 0 ? void 0 : cancelBtn.addEventListener("click", () => settle(false));
|
|
456
|
-
// Handle close button
|
|
457
|
-
const closeBtn = container.querySelector("#poofnet-close-btn");
|
|
458
|
-
closeBtn === null || closeBtn === void 0 ? void 0 : closeBtn.addEventListener("click", () => settle(false));
|
|
459
|
-
// Handle overlay click
|
|
460
|
-
const overlay = container.querySelector(".poofnet-modal-overlay");
|
|
461
|
-
overlay === null || overlay === void 0 ? void 0 : overlay.addEventListener("click", (e) => {
|
|
462
|
-
if (e.target === overlay)
|
|
463
|
-
settle(false);
|
|
464
|
-
});
|
|
465
|
-
// Handle escape key
|
|
466
|
-
document.addEventListener("keydown", escHandler);
|
|
467
|
-
});
|
|
468
|
-
}
|
|
469
367
|
createElement(tag, className, text) {
|
|
470
368
|
const el = document.createElement(tag);
|
|
471
369
|
if (className)
|
|
@@ -520,113 +418,6 @@ class OffchainAuthProvider {
|
|
|
520
418
|
footer.appendChild(close);
|
|
521
419
|
return overlay;
|
|
522
420
|
}
|
|
523
|
-
formatPath(path) {
|
|
524
|
-
const parts = path.split("/").filter(Boolean);
|
|
525
|
-
if (parts.length >= 2) {
|
|
526
|
-
return {
|
|
527
|
-
collection: parts[0],
|
|
528
|
-
documentId: parts[parts.length - 1],
|
|
529
|
-
};
|
|
530
|
-
}
|
|
531
|
-
return { collection: parts[0] || path, documentId: null };
|
|
532
|
-
}
|
|
533
|
-
formatFieldValue(value) {
|
|
534
|
-
if (value === null || value === undefined)
|
|
535
|
-
return "null";
|
|
536
|
-
if (typeof value === "string") {
|
|
537
|
-
return value.length > 30
|
|
538
|
-
? `"${value.slice(0, 30)}..."`
|
|
539
|
-
: `"${value}"`;
|
|
540
|
-
}
|
|
541
|
-
if (typeof value === "number" || typeof value === "boolean")
|
|
542
|
-
return String(value);
|
|
543
|
-
if (Array.isArray(value))
|
|
544
|
-
return `[${value.length} items]`;
|
|
545
|
-
if (typeof value === "object")
|
|
546
|
-
return `{${Object.keys(value).length} fields}`;
|
|
547
|
-
return String(value);
|
|
548
|
-
}
|
|
549
|
-
getActionDescription(type, collection, isNew) {
|
|
550
|
-
if (type === "delete")
|
|
551
|
-
return `Delete from ${collection}`;
|
|
552
|
-
return isNew ? `Create in ${collection}` : `Update ${collection}`;
|
|
553
|
-
}
|
|
554
|
-
buildTransactionModalContent(parsed, rawMessage) {
|
|
555
|
-
const instructions = parsed.instructions || [];
|
|
556
|
-
// Group instructions by type for summary
|
|
557
|
-
const sets = instructions.filter((i) => i.type === "set");
|
|
558
|
-
const deletes = instructions.filter((i) => i.type === "delete");
|
|
559
|
-
// Create summary text
|
|
560
|
-
let summaryText = "";
|
|
561
|
-
if (sets.length > 0 && deletes.length > 0) {
|
|
562
|
-
summaryText = `${sets.length} update${sets.length > 1 ? "s" : ""}, ${deletes.length} delete${deletes.length > 1 ? "s" : ""}`;
|
|
563
|
-
}
|
|
564
|
-
else if (sets.length > 0) {
|
|
565
|
-
summaryText = `${sets.length} update${sets.length > 1 ? "s" : ""}`;
|
|
566
|
-
}
|
|
567
|
-
else if (deletes.length > 0) {
|
|
568
|
-
summaryText = `${deletes.length} delete${deletes.length > 1 ? "s" : ""}`;
|
|
569
|
-
}
|
|
570
|
-
const { overlay, body, footer } = this.buildModalShell("🔐", "Confirm Transaction");
|
|
571
|
-
if (instructions.length > 0) {
|
|
572
|
-
if (summaryText) {
|
|
573
|
-
this.appendTextElement(body, "div", "poofnet-summary", summaryText);
|
|
574
|
-
}
|
|
575
|
-
const list = this.createElement("div", "poofnet-instructions-list");
|
|
576
|
-
for (const inst of instructions) {
|
|
577
|
-
list.appendChild(this.buildInstructionElement(inst));
|
|
578
|
-
}
|
|
579
|
-
body.appendChild(list);
|
|
580
|
-
}
|
|
581
|
-
else {
|
|
582
|
-
const section = this.createElement("div", "poofnet-section");
|
|
583
|
-
this.appendTextElement(section, "h3", "poofnet-section-title", "Message");
|
|
584
|
-
const raw = this.createElement("pre", "poofnet-raw-message", rawMessage.slice(0, 200) + (rawMessage.length > 200 ? "..." : ""));
|
|
585
|
-
section.appendChild(raw);
|
|
586
|
-
body.appendChild(section);
|
|
587
|
-
}
|
|
588
|
-
body.appendChild(this.buildInfoBox("This is a simulated transaction. No real fees will be charged."));
|
|
589
|
-
const cancel = this.createElement("button", "poofnet-btn poofnet-btn-cancel", "Cancel");
|
|
590
|
-
cancel.id = "poofnet-cancel-btn";
|
|
591
|
-
cancel.type = "button";
|
|
592
|
-
footer.appendChild(cancel);
|
|
593
|
-
const confirm = this.createElement("button", "poofnet-btn poofnet-btn-confirm", "Confirm");
|
|
594
|
-
confirm.id = "poofnet-confirm-btn";
|
|
595
|
-
confirm.type = "button";
|
|
596
|
-
footer.appendChild(confirm);
|
|
597
|
-
return overlay;
|
|
598
|
-
}
|
|
599
|
-
buildInstructionElement(inst) {
|
|
600
|
-
const { collection, documentId } = this.formatPath(inst.path);
|
|
601
|
-
const isDelete = inst.type === "delete";
|
|
602
|
-
const card = this.createElement("div", `poofnet-instruction ${isDelete ? "poofnet-action-delete" : "poofnet-action-set"}`);
|
|
603
|
-
const header = this.createElement("div", "poofnet-instruction-header");
|
|
604
|
-
this.appendTextElement(header, "span", "poofnet-instruction-icon", isDelete ? "🗑️" : "✏️");
|
|
605
|
-
this.appendTextElement(header, "span", "poofnet-instruction-action", isDelete ? "Delete" : "Save");
|
|
606
|
-
this.appendTextElement(header, "span", "poofnet-instruction-collection", collection);
|
|
607
|
-
card.appendChild(header);
|
|
608
|
-
if (documentId) {
|
|
609
|
-
this.appendTextElement(card, "div", "poofnet-instruction-id", `ID: ${documentId}`);
|
|
610
|
-
}
|
|
611
|
-
if (inst.data && !isDelete) {
|
|
612
|
-
const fieldKeys = Object.keys(inst.data).filter((key) => !key.startsWith("_"));
|
|
613
|
-
const visibleFields = fieldKeys.slice(0, 4);
|
|
614
|
-
if (visibleFields.length > 0) {
|
|
615
|
-
const fields = this.createElement("div", "poofnet-fields");
|
|
616
|
-
for (const key of visibleFields) {
|
|
617
|
-
const row = this.createElement("div", "poofnet-field");
|
|
618
|
-
this.appendTextElement(row, "span", "poofnet-field-key", `${key}:`);
|
|
619
|
-
this.appendTextElement(row, "span", "poofnet-field-value", this.formatFieldValue(inst.data[key]));
|
|
620
|
-
fields.appendChild(row);
|
|
621
|
-
}
|
|
622
|
-
if (fieldKeys.length > 4) {
|
|
623
|
-
this.appendTextElement(fields, "div", "poofnet-field-more", `+${fieldKeys.length - 4} more fields`);
|
|
624
|
-
}
|
|
625
|
-
card.appendChild(fields);
|
|
626
|
-
}
|
|
627
|
-
}
|
|
628
|
-
return card;
|
|
629
|
-
}
|
|
630
421
|
getModalStyles() {
|
|
631
422
|
return `
|
|
632
423
|
/* Ensure inert elements remain visible while being non-interactive */
|
|
@@ -723,130 +514,6 @@ class OffchainAuthProvider {
|
|
|
723
514
|
flex: 1;
|
|
724
515
|
}
|
|
725
516
|
|
|
726
|
-
.poofnet-summary {
|
|
727
|
-
font-size: 13px;
|
|
728
|
-
color: #6b7280;
|
|
729
|
-
margin-bottom: 12px;
|
|
730
|
-
text-align: center;
|
|
731
|
-
}
|
|
732
|
-
|
|
733
|
-
.poofnet-section {
|
|
734
|
-
margin-bottom: 16px;
|
|
735
|
-
}
|
|
736
|
-
|
|
737
|
-
.poofnet-section-title {
|
|
738
|
-
font-size: 12px;
|
|
739
|
-
font-weight: 600;
|
|
740
|
-
color: #666;
|
|
741
|
-
text-transform: uppercase;
|
|
742
|
-
letter-spacing: 0.5px;
|
|
743
|
-
margin: 0 0 8px;
|
|
744
|
-
}
|
|
745
|
-
|
|
746
|
-
.poofnet-instructions-list {
|
|
747
|
-
display: flex;
|
|
748
|
-
flex-direction: column;
|
|
749
|
-
gap: 10px;
|
|
750
|
-
}
|
|
751
|
-
|
|
752
|
-
.poofnet-instruction {
|
|
753
|
-
background: #f9fafb;
|
|
754
|
-
border-radius: 10px;
|
|
755
|
-
padding: 12px;
|
|
756
|
-
border-left: 3px solid #8b5cf6;
|
|
757
|
-
}
|
|
758
|
-
|
|
759
|
-
.poofnet-instruction.poofnet-action-delete {
|
|
760
|
-
border-left-color: #ef4444;
|
|
761
|
-
}
|
|
762
|
-
|
|
763
|
-
.poofnet-instruction-header {
|
|
764
|
-
display: flex;
|
|
765
|
-
align-items: center;
|
|
766
|
-
gap: 8px;
|
|
767
|
-
margin-bottom: 4px;
|
|
768
|
-
}
|
|
769
|
-
|
|
770
|
-
.poofnet-instruction-icon {
|
|
771
|
-
font-size: 16px;
|
|
772
|
-
flex-shrink: 0;
|
|
773
|
-
}
|
|
774
|
-
|
|
775
|
-
.poofnet-instruction-action {
|
|
776
|
-
font-size: 13px;
|
|
777
|
-
font-weight: 600;
|
|
778
|
-
color: #8b5cf6;
|
|
779
|
-
}
|
|
780
|
-
|
|
781
|
-
.poofnet-action-delete .poofnet-instruction-action {
|
|
782
|
-
color: #ef4444;
|
|
783
|
-
}
|
|
784
|
-
|
|
785
|
-
.poofnet-instruction-collection {
|
|
786
|
-
font-size: 13px;
|
|
787
|
-
font-weight: 500;
|
|
788
|
-
color: #374151;
|
|
789
|
-
}
|
|
790
|
-
|
|
791
|
-
.poofnet-instruction-id {
|
|
792
|
-
font-size: 11px;
|
|
793
|
-
color: #9ca3af;
|
|
794
|
-
font-family: monospace;
|
|
795
|
-
margin-bottom: 8px;
|
|
796
|
-
word-break: break-all;
|
|
797
|
-
}
|
|
798
|
-
|
|
799
|
-
.poofnet-fields {
|
|
800
|
-
background: white;
|
|
801
|
-
border-radius: 6px;
|
|
802
|
-
padding: 8px 10px;
|
|
803
|
-
margin-top: 8px;
|
|
804
|
-
}
|
|
805
|
-
|
|
806
|
-
.poofnet-field {
|
|
807
|
-
display: flex;
|
|
808
|
-
gap: 8px;
|
|
809
|
-
padding: 4px 0;
|
|
810
|
-
font-size: 12px;
|
|
811
|
-
border-bottom: 1px solid #f3f4f6;
|
|
812
|
-
}
|
|
813
|
-
|
|
814
|
-
.poofnet-field:last-child {
|
|
815
|
-
border-bottom: none;
|
|
816
|
-
}
|
|
817
|
-
|
|
818
|
-
.poofnet-field-key {
|
|
819
|
-
color: #6b7280;
|
|
820
|
-
font-weight: 500;
|
|
821
|
-
flex-shrink: 0;
|
|
822
|
-
}
|
|
823
|
-
|
|
824
|
-
.poofnet-field-value {
|
|
825
|
-
color: #374151;
|
|
826
|
-
word-break: break-all;
|
|
827
|
-
}
|
|
828
|
-
|
|
829
|
-
.poofnet-field-more {
|
|
830
|
-
font-size: 11px;
|
|
831
|
-
color: #9ca3af;
|
|
832
|
-
padding-top: 4px;
|
|
833
|
-
font-style: italic;
|
|
834
|
-
}
|
|
835
|
-
|
|
836
|
-
.poofnet-raw-message {
|
|
837
|
-
background: #f9fafb;
|
|
838
|
-
border-radius: 8px;
|
|
839
|
-
padding: 12px;
|
|
840
|
-
font-size: 11px;
|
|
841
|
-
font-family: monospace;
|
|
842
|
-
color: #4b5563;
|
|
843
|
-
white-space: pre-wrap;
|
|
844
|
-
word-break: break-all;
|
|
845
|
-
margin: 0;
|
|
846
|
-
max-height: 120px;
|
|
847
|
-
overflow-y: auto;
|
|
848
|
-
}
|
|
849
|
-
|
|
850
517
|
.poofnet-info-box {
|
|
851
518
|
display: flex;
|
|
852
519
|
align-items: center;
|
|
@@ -895,15 +562,6 @@ class OffchainAuthProvider {
|
|
|
895
562
|
.poofnet-btn-cancel:hover {
|
|
896
563
|
background: #e5e7eb;
|
|
897
564
|
}
|
|
898
|
-
|
|
899
|
-
.poofnet-btn-confirm {
|
|
900
|
-
background: #8b5cf6;
|
|
901
|
-
color: white;
|
|
902
|
-
}
|
|
903
|
-
|
|
904
|
-
.poofnet-btn-confirm:hover {
|
|
905
|
-
background: #7c3aed;
|
|
906
|
-
}
|
|
907
565
|
`;
|
|
908
566
|
}
|
|
909
567
|
}
|
|
@@ -6065,7 +5723,7 @@ async function getAuthProvider(config) {
|
|
|
6065
5723
|
// manager as legacy email sessions. Human login should be started
|
|
6066
5724
|
// with loginWithRedirect(); this provider is kept as the restore and
|
|
6067
5725
|
// logout surface for those sessions.
|
|
6068
|
-
currentAuthProvider = new (await Promise.resolve().then(function () { return require('./email-auth-provider-
|
|
5726
|
+
currentAuthProvider = new (await Promise.resolve().then(function () { return require('./email-auth-provider-CGhDN-8d.js'); })).EmailAuthProvider();
|
|
6069
5727
|
break;
|
|
6070
5728
|
case "phantom": {
|
|
6071
5729
|
// First-class Solana WALLET LOGIN (the poof/TaroBase-style "connect
|
|
@@ -6107,7 +5765,7 @@ async function getAuthProvider(config) {
|
|
|
6107
5765
|
// (bounded-login-widget.ts), so registration never counts as
|
|
6108
5766
|
// evidence the user has a wallet.
|
|
6109
5767
|
await ensureSolanaMobileWalletRegistered(config, configuredNetwork);
|
|
6110
|
-
const { InjectedWalletProvider } = await Promise.resolve().then(function () { return require('./injected-wallet-provider-
|
|
5768
|
+
const { InjectedWalletProvider } = await Promise.resolve().then(function () { return require('./injected-wallet-provider-FY9JLEPR.js'); });
|
|
6111
5769
|
currentAuthProvider = new InjectedWalletProvider(resolveInjectedWalletConfig(config), rpcUrl, configuredNetwork);
|
|
6112
5770
|
break;
|
|
6113
5771
|
}
|
|
@@ -6120,7 +5778,7 @@ async function getAuthProvider(config) {
|
|
|
6120
5778
|
// Selecting authMethod:'evm-wallet' IS the opt-in — pass evmWalletConfig
|
|
6121
5779
|
// to point at a specific wallet or set chainId/domain.
|
|
6122
5780
|
const evmWalletConfig = ((_a = config.evmWalletConfig) !== null && _a !== void 0 ? _a : {});
|
|
6123
|
-
const { InjectedEvmWalletProvider } = await Promise.resolve().then(function () { return require('./injected-evm-wallet-provider-
|
|
5781
|
+
const { InjectedEvmWalletProvider } = await Promise.resolve().then(function () { return require('./injected-evm-wallet-provider-Cym2uENX.js'); });
|
|
6124
5782
|
currentAuthProvider = new InjectedEvmWalletProvider(evmWalletConfig);
|
|
6125
5783
|
break;
|
|
6126
5784
|
}
|
|
@@ -6145,7 +5803,7 @@ async function getAuthProvider(config) {
|
|
|
6145
5803
|
break;
|
|
6146
5804
|
case "guest":
|
|
6147
5805
|
// Anonymous auth: a device-local ed25519 keypair signs the challenge.
|
|
6148
|
-
currentAuthProvider = new (await Promise.resolve().then(function () { return require('./guest-auth-provider
|
|
5806
|
+
currentAuthProvider = new (await Promise.resolve().then(function () { return require('./guest-auth-provider-BT9JPOpp.js'); })).GuestAuthProvider();
|
|
6149
5807
|
break;
|
|
6150
5808
|
}
|
|
6151
5809
|
if (!currentAuthProvider) {
|
|
@@ -6207,7 +5865,7 @@ async function signInAnonymously() {
|
|
|
6207
5865
|
// Lazy-load the guest provider so its ed25519/web3 dependencies stay out of
|
|
6208
5866
|
// the main bundle for data-only apps. Specifier is a static string literal
|
|
6209
5867
|
// so bundle-splitting can see it.
|
|
6210
|
-
const provider = new (await Promise.resolve().then(function () { return require('./guest-auth-provider
|
|
5868
|
+
const provider = new (await Promise.resolve().then(function () { return require('./guest-auth-provider-BT9JPOpp.js'); })).GuestAuthProvider();
|
|
6211
5869
|
setAuthLoading(true); // reflect "signing in…" while the guest keypair session is minted
|
|
6212
5870
|
// adoptSessionProvider awaits only getConfig() (already resolved here) and then
|
|
6213
5871
|
// runs every write - provider/method/config/marker/user - in one synchronous
|
|
@@ -6378,7 +6036,7 @@ function ensureSharedWalletLoginReady() {
|
|
|
6378
6036
|
if (!sharedWalletReady) {
|
|
6379
6037
|
sharedWalletReady = (async () => {
|
|
6380
6038
|
await core.getConfig();
|
|
6381
|
-
await Promise.resolve().then(function () { return require('./injected-wallet-provider-
|
|
6039
|
+
await Promise.resolve().then(function () { return require('./injected-wallet-provider-FY9JLEPR.js'); });
|
|
6382
6040
|
})().catch((error) => {
|
|
6383
6041
|
sharedWalletReady = null;
|
|
6384
6042
|
throw error;
|
|
@@ -8762,4 +8420,4 @@ exports.useAuth = useAuth;
|
|
|
8762
8420
|
exports.useBuildRun = useBuildRun;
|
|
8763
8421
|
exports.useQuery = useQuery;
|
|
8764
8422
|
exports.waitForAuthReady = waitForAuthReady;
|
|
8765
|
-
//# sourceMappingURL=index.native-
|
|
8423
|
+
//# sourceMappingURL=index.native-CNW3iAoP.js.map
|