@medialane/ui 0.169.0 → 0.171.0
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/components/badge.d.cts +1 -1
- package/dist/components/badge.d.ts +1 -1
- package/dist/components/button.d.cts +2 -2
- package/dist/components/button.d.ts +2 -2
- package/dist/components/fast-mint/fast-mint.d.cts +2 -2
- package/dist/components/fast-mint/fast-mint.d.ts +2 -2
- package/dist/components/sheet.d.cts +1 -1
- package/dist/components/sheet.d.ts +1 -1
- package/dist/components/wallet/export-key-section.cjs +9 -14
- package/dist/components/wallet/export-key-section.cjs.map +1 -1
- package/dist/components/wallet/export-key-section.d.cts +1 -2
- package/dist/components/wallet/export-key-section.d.ts +1 -2
- package/dist/components/wallet/export-key-section.js +9 -14
- package/dist/components/wallet/export-key-section.js.map +1 -1
- package/dist/index.cjs +68 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +8 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.js +63 -0
- package/dist/index.js.map +1 -1
- package/dist/utils/sitemap-data.cjs +55 -0
- package/dist/utils/sitemap-data.cjs.map +1 -0
- package/dist/utils/sitemap-data.d.cts +23 -0
- package/dist/utils/sitemap-data.d.ts +23 -0
- package/dist/utils/sitemap-data.js +31 -0
- package/dist/utils/sitemap-data.js.map +1 -0
- package/dist/utils/use-coin-price.cjs +88 -0
- package/dist/utils/use-coin-price.cjs.map +1 -0
- package/dist/utils/use-coin-price.d.cts +17 -0
- package/dist/utils/use-coin-price.d.ts +17 -0
- package/dist/utils/use-coin-price.js +53 -0
- package/dist/utils/use-coin-price.js.map +1 -0
- package/dist/utils/use-collections.cjs +2 -2
- package/dist/utils/use-collections.cjs.map +1 -1
- package/dist/utils/use-collections.js +2 -2
- package/dist/utils/use-collections.js.map +1 -1
- package/dist/utils/use-drops.cjs +94 -0
- package/dist/utils/use-drops.cjs.map +1 -0
- package/dist/utils/use-drops.d.cts +39 -0
- package/dist/utils/use-drops.d.ts +39 -0
- package/dist/utils/use-drops.js +56 -0
- package/dist/utils/use-drops.js.map +1 -0
- package/dist/utils/use-platform-stats.cjs +50 -0
- package/dist/utils/use-platform-stats.cjs.map +1 -0
- package/dist/utils/use-platform-stats.d.cts +9 -0
- package/dist/utils/use-platform-stats.d.ts +9 -0
- package/dist/utils/use-platform-stats.js +16 -0
- package/dist/utils/use-platform-stats.js.map +1 -0
- package/dist/utils/use-pop.cjs +72 -0
- package/dist/utils/use-pop.cjs.map +1 -0
- package/dist/utils/use-pop.d.cts +28 -0
- package/dist/utils/use-pop.d.ts +28 -0
- package/dist/utils/use-pop.js +36 -0
- package/dist/utils/use-pop.js.map +1 -0
- package/dist/utils/use-sponsorship.cjs +131 -0
- package/dist/utils/use-sponsorship.cjs.map +1 -0
- package/dist/utils/use-sponsorship.d.cts +70 -0
- package/dist/utils/use-sponsorship.d.ts +70 -0
- package/dist/utils/use-sponsorship.js +90 -0
- package/dist/utils/use-sponsorship.js.map +1 -0
- package/dist/utils/use-tiers.cjs +137 -0
- package/dist/utils/use-tiers.cjs.map +1 -0
- package/dist/utils/use-tiers.d.cts +60 -0
- package/dist/utils/use-tiers.d.ts +60 -0
- package/dist/utils/use-tiers.js +95 -0
- package/dist/utils/use-tiers.js.map +1 -0
- package/dist/utils/use-tokens-by-ip-type.cjs +50 -0
- package/dist/utils/use-tokens-by-ip-type.cjs.map +1 -0
- package/dist/utils/use-tokens-by-ip-type.d.cts +14 -0
- package/dist/utils/use-tokens-by-ip-type.d.ts +14 -0
- package/dist/utils/use-tokens-by-ip-type.js +16 -0
- package/dist/utils/use-tokens-by-ip-type.js.map +1 -0
- package/package.json +3 -3
|
@@ -4,7 +4,7 @@ import * as React from 'react';
|
|
|
4
4
|
import { VariantProps } from 'class-variance-authority';
|
|
5
5
|
|
|
6
6
|
declare const badgeVariants: (props?: ({
|
|
7
|
-
variant?: "
|
|
7
|
+
variant?: "default" | "destructive" | "outline" | "secondary" | null | undefined;
|
|
8
8
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
9
9
|
interface BadgeProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof badgeVariants> {
|
|
10
10
|
}
|
|
@@ -4,7 +4,7 @@ import * as React from 'react';
|
|
|
4
4
|
import { VariantProps } from 'class-variance-authority';
|
|
5
5
|
|
|
6
6
|
declare const badgeVariants: (props?: ({
|
|
7
|
-
variant?: "
|
|
7
|
+
variant?: "default" | "destructive" | "outline" | "secondary" | null | undefined;
|
|
8
8
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
9
9
|
interface BadgeProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof badgeVariants> {
|
|
10
10
|
}
|
|
@@ -3,8 +3,8 @@ import * as React from 'react';
|
|
|
3
3
|
import { VariantProps } from 'class-variance-authority';
|
|
4
4
|
|
|
5
5
|
declare const buttonVariants: (props?: ({
|
|
6
|
-
variant?: "
|
|
7
|
-
size?: "
|
|
6
|
+
variant?: "ghost" | "link" | "default" | "destructive" | "outline" | "secondary" | "premium" | "tonal" | "gradient-border" | "gradient-fill" | null | undefined;
|
|
7
|
+
size?: "icon" | "default" | "sm" | "lg" | null | undefined;
|
|
8
8
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
9
9
|
interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
|
|
10
10
|
asChild?: boolean;
|
|
@@ -3,8 +3,8 @@ import * as React from 'react';
|
|
|
3
3
|
import { VariantProps } from 'class-variance-authority';
|
|
4
4
|
|
|
5
5
|
declare const buttonVariants: (props?: ({
|
|
6
|
-
variant?: "
|
|
7
|
-
size?: "
|
|
6
|
+
variant?: "ghost" | "link" | "default" | "destructive" | "outline" | "secondary" | "premium" | "tonal" | "gradient-border" | "gradient-fill" | null | undefined;
|
|
7
|
+
size?: "icon" | "default" | "sm" | "lg" | null | undefined;
|
|
8
8
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
9
9
|
interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
|
|
10
10
|
asChild?: boolean;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import * as React from 'react';
|
|
3
3
|
import { FastMintProps } from './types.cjs';
|
|
4
4
|
import 'starknet';
|
|
5
5
|
import '@medialane/sdk';
|
|
6
6
|
import '@medialane/sdk/starknet';
|
|
7
7
|
|
|
8
|
-
declare function FastMint(props: FastMintProps): string | number | bigint | boolean |
|
|
8
|
+
declare function FastMint(props: FastMintProps): string | number | bigint | boolean | Iterable<React.ReactNode> | Promise<string | number | bigint | boolean | React.ReactPortal | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode> | null | undefined> | react_jsx_runtime.JSX.Element | null | undefined;
|
|
9
9
|
|
|
10
10
|
export { FastMint };
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import * as React from 'react';
|
|
3
3
|
import { FastMintProps } from './types.js';
|
|
4
4
|
import 'starknet';
|
|
5
5
|
import '@medialane/sdk';
|
|
6
6
|
import '@medialane/sdk/starknet';
|
|
7
7
|
|
|
8
|
-
declare function FastMint(props: FastMintProps): string | number | bigint | boolean |
|
|
8
|
+
declare function FastMint(props: FastMintProps): string | number | bigint | boolean | Iterable<React.ReactNode> | Promise<string | number | bigint | boolean | React.ReactPortal | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode> | null | undefined> | react_jsx_runtime.JSX.Element | null | undefined;
|
|
9
9
|
|
|
10
10
|
export { FastMint };
|
|
@@ -10,7 +10,7 @@ declare const SheetClose: React.ForwardRefExoticComponent<SheetPrimitive.DialogC
|
|
|
10
10
|
declare const SheetPortal: React.FC<SheetPrimitive.DialogPortalProps>;
|
|
11
11
|
declare const SheetOverlay: React.ForwardRefExoticComponent<Omit<SheetPrimitive.DialogOverlayProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
12
12
|
declare const sheetVariants: (props?: ({
|
|
13
|
-
side?: "
|
|
13
|
+
side?: "left" | "right" | "bottom" | "top" | null | undefined;
|
|
14
14
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
15
15
|
interface SheetContentProps extends React.ComponentPropsWithoutRef<typeof SheetPrimitive.Content>, VariantProps<typeof sheetVariants> {
|
|
16
16
|
overlayClassName?: string;
|
|
@@ -10,7 +10,7 @@ declare const SheetClose: React.ForwardRefExoticComponent<SheetPrimitive.DialogC
|
|
|
10
10
|
declare const SheetPortal: React.FC<SheetPrimitive.DialogPortalProps>;
|
|
11
11
|
declare const SheetOverlay: React.ForwardRefExoticComponent<Omit<SheetPrimitive.DialogOverlayProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
12
12
|
declare const sheetVariants: (props?: ({
|
|
13
|
-
side?: "
|
|
13
|
+
side?: "left" | "right" | "bottom" | "top" | null | undefined;
|
|
14
14
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
15
15
|
interface SheetContentProps extends React.ComponentPropsWithoutRef<typeof SheetPrimitive.Content>, VariantProps<typeof sheetVariants> {
|
|
16
16
|
overlayClassName?: string;
|
|
@@ -25,10 +25,11 @@ module.exports = __toCommonJS(export_key_section_exports);
|
|
|
25
25
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
26
26
|
var import_react = require("react");
|
|
27
27
|
var import_lucide_react = require("lucide-react");
|
|
28
|
+
var import_starknet = require("@medialane/sdk/starknet");
|
|
28
29
|
var import_button = require("../button.js");
|
|
29
30
|
var import_alert = require("../alert.js");
|
|
30
|
-
function ExportKeySection({ loadSealed, unlock,
|
|
31
|
-
const [
|
|
31
|
+
function ExportKeySection({ loadSealed, unlock, describeError }) {
|
|
32
|
+
const [recoveryKey, setRecoveryKey] = (0, import_react.useState)(null);
|
|
32
33
|
const [busy, setBusy] = (0, import_react.useState)(false);
|
|
33
34
|
const [error, setError] = (0, import_react.useState)(null);
|
|
34
35
|
const [copied, setCopied] = (0, import_react.useState)(false);
|
|
@@ -41,13 +42,7 @@ function ExportKeySection({ loadSealed, unlock, isRecoveryKey, describeError })
|
|
|
41
42
|
setError("This browser has no wallet key stored.");
|
|
42
43
|
return;
|
|
43
44
|
}
|
|
44
|
-
|
|
45
|
-
setError(
|
|
46
|
-
"This device was approved from another one, so its key cannot restore your account on its own. Export from the device you first signed up on."
|
|
47
|
-
);
|
|
48
|
-
return;
|
|
49
|
-
}
|
|
50
|
-
setPrivateKey(await unlock(sealed));
|
|
45
|
+
setRecoveryKey((0, import_starknet.encodeRecoveryKey)({ walletAddress: sealed.address, privateKey: await unlock(sealed) }));
|
|
51
46
|
} catch (err) {
|
|
52
47
|
const fallback = "Could not unlock your key. Please try again.";
|
|
53
48
|
setError(describeError ? describeError(err, fallback) : fallback);
|
|
@@ -56,13 +51,13 @@ function ExportKeySection({ loadSealed, unlock, isRecoveryKey, describeError })
|
|
|
56
51
|
}
|
|
57
52
|
};
|
|
58
53
|
const copy = async () => {
|
|
59
|
-
if (!
|
|
60
|
-
await navigator.clipboard.writeText(
|
|
54
|
+
if (!recoveryKey) return;
|
|
55
|
+
await navigator.clipboard.writeText(recoveryKey);
|
|
61
56
|
setCopied(true);
|
|
62
57
|
setTimeout(() => setCopied(false), 2e3);
|
|
63
58
|
};
|
|
64
59
|
const hide = () => {
|
|
65
|
-
|
|
60
|
+
setRecoveryKey(null);
|
|
66
61
|
setCopied(false);
|
|
67
62
|
};
|
|
68
63
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex flex-col gap-3", children: [
|
|
@@ -70,7 +65,7 @@ function ExportKeySection({ loadSealed, unlock, isRecoveryKey, describeError })
|
|
|
70
65
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-sm font-semibold", children: "Recovery key" }),
|
|
71
66
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "mt-1 text-xs text-muted-foreground leading-relaxed", children: "Save this somewhere private, such as a password manager. It restores your account if you lose access to every device you use. To start using a new phone or browser, approve it from a device you already have." })
|
|
72
67
|
] }),
|
|
73
|
-
|
|
68
|
+
recoveryKey ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
74
69
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_alert.Alert, { variant: "destructive", children: [
|
|
75
70
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.ShieldAlert, { className: "h-4 w-4" }),
|
|
76
71
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_alert.AlertDescription, { className: "text-xs leading-relaxed", children: [
|
|
@@ -79,7 +74,7 @@ function ExportKeySection({ loadSealed, unlock, isRecoveryKey, describeError })
|
|
|
79
74
|
"Medialane will never ask you for it. Treat any message requesting it as an attempt to take your assets."
|
|
80
75
|
] })
|
|
81
76
|
] }),
|
|
82
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("code", { className: "block break-all rounded-xl bg-muted px-3 py-2.5 font-mono text-xs select-all", children:
|
|
77
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("code", { className: "block break-all rounded-xl bg-muted px-3 py-2.5 font-mono text-xs select-all", children: recoveryKey }),
|
|
83
78
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center gap-2", children: [
|
|
84
79
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_button.Button, { onClick: copy, variant: "outline", size: "sm", children: [
|
|
85
80
|
copied ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.Check, { className: "mr-1.5 h-3.5 w-3.5" }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.Copy, { className: "mr-1.5 h-3.5 w-3.5" }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/wallet/export-key-section.tsx"],"sourcesContent":["\"use client\";\n\nimport { useState } from \"react\";\nimport { KeyRound, Copy, Check, EyeOff, Loader2, ShieldAlert } from \"lucide-react\";\nimport type
|
|
1
|
+
{"version":3,"sources":["../../../src/components/wallet/export-key-section.tsx"],"sourcesContent":["\"use client\";\n\nimport { useState } from \"react\";\nimport { KeyRound, Copy, Check, EyeOff, Loader2, ShieldAlert } from \"lucide-react\";\nimport { encodeRecoveryKey, type SealedOwner } from \"@medialane/sdk/starknet\";\nimport { Button } from \"../button.js\";\nimport { Alert, AlertDescription } from \"../alert.js\";\n\nexport interface ExportKeySectionProps {\n loadSealed: () => SealedOwner | null;\n unlock: (sealed: SealedOwner) => Promise<string>;\n describeError?: (err: unknown, fallback: string) => string;\n}\n\nexport function ExportKeySection({ loadSealed, unlock, describeError }: ExportKeySectionProps) {\n const [recoveryKey, setRecoveryKey] = useState<string | null>(null);\n const [busy, setBusy] = useState(false);\n const [error, setError] = useState<string | null>(null);\n const [copied, setCopied] = useState(false);\n\n const reveal = async () => {\n setBusy(true);\n setError(null);\n try {\n const sealed = loadSealed();\n if (!sealed) {\n setError(\"This browser has no wallet key stored.\");\n return;\n }\n setRecoveryKey(encodeRecoveryKey({ walletAddress: sealed.address, privateKey: await unlock(sealed) }));\n } catch (err) {\n const fallback = \"Could not unlock your key. Please try again.\";\n setError(describeError ? describeError(err, fallback) : fallback);\n } finally {\n setBusy(false);\n }\n };\n\n const copy = async () => {\n if (!recoveryKey) return;\n await navigator.clipboard.writeText(recoveryKey);\n setCopied(true);\n setTimeout(() => setCopied(false), 2000);\n };\n\n const hide = () => {\n setRecoveryKey(null);\n setCopied(false);\n };\n\n return (\n <div className=\"flex flex-col gap-3\">\n <div>\n <p className=\"text-sm font-semibold\">Recovery key</p>\n <p className=\"mt-1 text-xs text-muted-foreground leading-relaxed\">\n Save this somewhere private, such as a password manager. It restores your account if you\n lose access to every device you use. To start using a new phone or browser, approve it\n from a device you already have.\n </p>\n </div>\n\n {recoveryKey ? (\n <>\n <Alert variant=\"destructive\">\n <ShieldAlert className=\"h-4 w-4\" />\n <AlertDescription className=\"text-xs leading-relaxed\">\n <span className=\"font-semibold\">Anyone with this key controls your wallet.</span>{\" \"}\n Medialane will never ask you for it. Treat any message requesting it as an attempt to\n take your assets.\n </AlertDescription>\n </Alert>\n <code className=\"block break-all rounded-xl bg-muted px-3 py-2.5 font-mono text-xs select-all\">\n {recoveryKey}\n </code>\n <div className=\"flex items-center gap-2\">\n <Button onClick={copy} variant=\"outline\" size=\"sm\">\n {copied ? <Check className=\"mr-1.5 h-3.5 w-3.5\" /> : <Copy className=\"mr-1.5 h-3.5 w-3.5\" />}\n {copied ? \"Copied\" : \"Copy key\"}\n </Button>\n <Button onClick={hide} variant=\"ghost\" size=\"sm\">\n <EyeOff className=\"mr-1.5 h-3.5 w-3.5\" />\n Hide\n </Button>\n </div>\n </>\n ) : (\n <>\n {error && <p className=\"text-sm text-destructive\">{error}</p>}\n <Button onClick={reveal} disabled={busy} variant=\"outline\" size=\"sm\" className=\"self-start\">\n {busy ? <Loader2 className=\"mr-1.5 h-3.5 w-3.5 animate-spin\" /> : <KeyRound className=\"mr-1.5 h-3.5 w-3.5\" />}\n Show recovery key\n </Button>\n </>\n )}\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAoDM;AAlDN,mBAAyB;AACzB,0BAAoE;AACpE,sBAAoD;AACpD,oBAAuB;AACvB,mBAAwC;AAQjC,SAAS,iBAAiB,EAAE,YAAY,QAAQ,cAAc,GAA0B;AAC7F,QAAM,CAAC,aAAa,cAAc,QAAI,uBAAwB,IAAI;AAClE,QAAM,CAAC,MAAM,OAAO,QAAI,uBAAS,KAAK;AACtC,QAAM,CAAC,OAAO,QAAQ,QAAI,uBAAwB,IAAI;AACtD,QAAM,CAAC,QAAQ,SAAS,QAAI,uBAAS,KAAK;AAE1C,QAAM,SAAS,YAAY;AACzB,YAAQ,IAAI;AACZ,aAAS,IAAI;AACb,QAAI;AACF,YAAM,SAAS,WAAW;AAC1B,UAAI,CAAC,QAAQ;AACX,iBAAS,wCAAwC;AACjD;AAAA,MACF;AACA,yBAAe,mCAAkB,EAAE,eAAe,OAAO,SAAS,YAAY,MAAM,OAAO,MAAM,EAAE,CAAC,CAAC;AAAA,IACvG,SAAS,KAAK;AACZ,YAAM,WAAW;AACjB,eAAS,gBAAgB,cAAc,KAAK,QAAQ,IAAI,QAAQ;AAAA,IAClE,UAAE;AACA,cAAQ,KAAK;AAAA,IACf;AAAA,EACF;AAEA,QAAM,OAAO,YAAY;AACvB,QAAI,CAAC,YAAa;AAClB,UAAM,UAAU,UAAU,UAAU,WAAW;AAC/C,cAAU,IAAI;AACd,eAAW,MAAM,UAAU,KAAK,GAAG,GAAI;AAAA,EACzC;AAEA,QAAM,OAAO,MAAM;AACjB,mBAAe,IAAI;AACnB,cAAU,KAAK;AAAA,EACjB;AAEA,SACE,6CAAC,SAAI,WAAU,uBACb;AAAA,iDAAC,SACC;AAAA,kDAAC,OAAE,WAAU,yBAAwB,0BAAY;AAAA,MACjD,4CAAC,OAAE,WAAU,sDAAqD,6NAIlE;AAAA,OACF;AAAA,IAEC,cACC,4EACE;AAAA,mDAAC,sBAAM,SAAQ,eACb;AAAA,oDAAC,mCAAY,WAAU,WAAU;AAAA,QACjC,6CAAC,iCAAiB,WAAU,2BAC1B;AAAA,sDAAC,UAAK,WAAU,iBAAgB,wDAA0C;AAAA,UAAQ;AAAA,UAAI;AAAA,WAGxF;AAAA,SACF;AAAA,MACA,4CAAC,UAAK,WAAU,gFACb,uBACH;AAAA,MACA,6CAAC,SAAI,WAAU,2BACb;AAAA,qDAAC,wBAAO,SAAS,MAAM,SAAQ,WAAU,MAAK,MAC3C;AAAA,mBAAS,4CAAC,6BAAM,WAAU,sBAAqB,IAAK,4CAAC,4BAAK,WAAU,sBAAqB;AAAA,UACzF,SAAS,WAAW;AAAA,WACvB;AAAA,QACA,6CAAC,wBAAO,SAAS,MAAM,SAAQ,SAAQ,MAAK,MAC1C;AAAA,sDAAC,8BAAO,WAAU,sBAAqB;AAAA,UAAE;AAAA,WAE3C;AAAA,SACF;AAAA,OACF,IAEA,4EACG;AAAA,eAAS,4CAAC,OAAE,WAAU,4BAA4B,iBAAM;AAAA,MACzD,6CAAC,wBAAO,SAAS,QAAQ,UAAU,MAAM,SAAQ,WAAU,MAAK,MAAK,WAAU,cAC5E;AAAA,eAAO,4CAAC,+BAAQ,WAAU,mCAAkC,IAAK,4CAAC,gCAAS,WAAU,sBAAqB;AAAA,QAAG;AAAA,SAEhH;AAAA,OACF;AAAA,KAEJ;AAEJ;","names":[]}
|
|
@@ -4,9 +4,8 @@ import { SealedOwner } from '@medialane/sdk/starknet';
|
|
|
4
4
|
interface ExportKeySectionProps {
|
|
5
5
|
loadSealed: () => SealedOwner | null;
|
|
6
6
|
unlock: (sealed: SealedOwner) => Promise<string>;
|
|
7
|
-
isRecoveryKey: (sealed: SealedOwner) => boolean;
|
|
8
7
|
describeError?: (err: unknown, fallback: string) => string;
|
|
9
8
|
}
|
|
10
|
-
declare function ExportKeySection({ loadSealed, unlock,
|
|
9
|
+
declare function ExportKeySection({ loadSealed, unlock, describeError }: ExportKeySectionProps): react_jsx_runtime.JSX.Element;
|
|
11
10
|
|
|
12
11
|
export { ExportKeySection, type ExportKeySectionProps };
|
|
@@ -4,9 +4,8 @@ import { SealedOwner } from '@medialane/sdk/starknet';
|
|
|
4
4
|
interface ExportKeySectionProps {
|
|
5
5
|
loadSealed: () => SealedOwner | null;
|
|
6
6
|
unlock: (sealed: SealedOwner) => Promise<string>;
|
|
7
|
-
isRecoveryKey: (sealed: SealedOwner) => boolean;
|
|
8
7
|
describeError?: (err: unknown, fallback: string) => string;
|
|
9
8
|
}
|
|
10
|
-
declare function ExportKeySection({ loadSealed, unlock,
|
|
9
|
+
declare function ExportKeySection({ loadSealed, unlock, describeError }: ExportKeySectionProps): react_jsx_runtime.JSX.Element;
|
|
11
10
|
|
|
12
11
|
export { ExportKeySection, type ExportKeySectionProps };
|
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { useState } from "react";
|
|
4
4
|
import { KeyRound, Copy, Check, EyeOff, Loader2, ShieldAlert } from "lucide-react";
|
|
5
|
+
import { encodeRecoveryKey } from "@medialane/sdk/starknet";
|
|
5
6
|
import { Button } from "../button.js";
|
|
6
7
|
import { Alert, AlertDescription } from "../alert.js";
|
|
7
|
-
function ExportKeySection({ loadSealed, unlock,
|
|
8
|
-
const [
|
|
8
|
+
function ExportKeySection({ loadSealed, unlock, describeError }) {
|
|
9
|
+
const [recoveryKey, setRecoveryKey] = useState(null);
|
|
9
10
|
const [busy, setBusy] = useState(false);
|
|
10
11
|
const [error, setError] = useState(null);
|
|
11
12
|
const [copied, setCopied] = useState(false);
|
|
@@ -18,13 +19,7 @@ function ExportKeySection({ loadSealed, unlock, isRecoveryKey, describeError })
|
|
|
18
19
|
setError("This browser has no wallet key stored.");
|
|
19
20
|
return;
|
|
20
21
|
}
|
|
21
|
-
|
|
22
|
-
setError(
|
|
23
|
-
"This device was approved from another one, so its key cannot restore your account on its own. Export from the device you first signed up on."
|
|
24
|
-
);
|
|
25
|
-
return;
|
|
26
|
-
}
|
|
27
|
-
setPrivateKey(await unlock(sealed));
|
|
22
|
+
setRecoveryKey(encodeRecoveryKey({ walletAddress: sealed.address, privateKey: await unlock(sealed) }));
|
|
28
23
|
} catch (err) {
|
|
29
24
|
const fallback = "Could not unlock your key. Please try again.";
|
|
30
25
|
setError(describeError ? describeError(err, fallback) : fallback);
|
|
@@ -33,13 +28,13 @@ function ExportKeySection({ loadSealed, unlock, isRecoveryKey, describeError })
|
|
|
33
28
|
}
|
|
34
29
|
};
|
|
35
30
|
const copy = async () => {
|
|
36
|
-
if (!
|
|
37
|
-
await navigator.clipboard.writeText(
|
|
31
|
+
if (!recoveryKey) return;
|
|
32
|
+
await navigator.clipboard.writeText(recoveryKey);
|
|
38
33
|
setCopied(true);
|
|
39
34
|
setTimeout(() => setCopied(false), 2e3);
|
|
40
35
|
};
|
|
41
36
|
const hide = () => {
|
|
42
|
-
|
|
37
|
+
setRecoveryKey(null);
|
|
43
38
|
setCopied(false);
|
|
44
39
|
};
|
|
45
40
|
return /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-3", children: [
|
|
@@ -47,7 +42,7 @@ function ExportKeySection({ loadSealed, unlock, isRecoveryKey, describeError })
|
|
|
47
42
|
/* @__PURE__ */ jsx("p", { className: "text-sm font-semibold", children: "Recovery key" }),
|
|
48
43
|
/* @__PURE__ */ jsx("p", { className: "mt-1 text-xs text-muted-foreground leading-relaxed", children: "Save this somewhere private, such as a password manager. It restores your account if you lose access to every device you use. To start using a new phone or browser, approve it from a device you already have." })
|
|
49
44
|
] }),
|
|
50
|
-
|
|
45
|
+
recoveryKey ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
51
46
|
/* @__PURE__ */ jsxs(Alert, { variant: "destructive", children: [
|
|
52
47
|
/* @__PURE__ */ jsx(ShieldAlert, { className: "h-4 w-4" }),
|
|
53
48
|
/* @__PURE__ */ jsxs(AlertDescription, { className: "text-xs leading-relaxed", children: [
|
|
@@ -56,7 +51,7 @@ function ExportKeySection({ loadSealed, unlock, isRecoveryKey, describeError })
|
|
|
56
51
|
"Medialane will never ask you for it. Treat any message requesting it as an attempt to take your assets."
|
|
57
52
|
] })
|
|
58
53
|
] }),
|
|
59
|
-
/* @__PURE__ */ jsx("code", { className: "block break-all rounded-xl bg-muted px-3 py-2.5 font-mono text-xs select-all", children:
|
|
54
|
+
/* @__PURE__ */ jsx("code", { className: "block break-all rounded-xl bg-muted px-3 py-2.5 font-mono text-xs select-all", children: recoveryKey }),
|
|
60
55
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
61
56
|
/* @__PURE__ */ jsxs(Button, { onClick: copy, variant: "outline", size: "sm", children: [
|
|
62
57
|
copied ? /* @__PURE__ */ jsx(Check, { className: "mr-1.5 h-3.5 w-3.5" }) : /* @__PURE__ */ jsx(Copy, { className: "mr-1.5 h-3.5 w-3.5" }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/wallet/export-key-section.tsx"],"sourcesContent":["\"use client\";\n\nimport { useState } from \"react\";\nimport { KeyRound, Copy, Check, EyeOff, Loader2, ShieldAlert } from \"lucide-react\";\nimport type
|
|
1
|
+
{"version":3,"sources":["../../../src/components/wallet/export-key-section.tsx"],"sourcesContent":["\"use client\";\n\nimport { useState } from \"react\";\nimport { KeyRound, Copy, Check, EyeOff, Loader2, ShieldAlert } from \"lucide-react\";\nimport { encodeRecoveryKey, type SealedOwner } from \"@medialane/sdk/starknet\";\nimport { Button } from \"../button.js\";\nimport { Alert, AlertDescription } from \"../alert.js\";\n\nexport interface ExportKeySectionProps {\n loadSealed: () => SealedOwner | null;\n unlock: (sealed: SealedOwner) => Promise<string>;\n describeError?: (err: unknown, fallback: string) => string;\n}\n\nexport function ExportKeySection({ loadSealed, unlock, describeError }: ExportKeySectionProps) {\n const [recoveryKey, setRecoveryKey] = useState<string | null>(null);\n const [busy, setBusy] = useState(false);\n const [error, setError] = useState<string | null>(null);\n const [copied, setCopied] = useState(false);\n\n const reveal = async () => {\n setBusy(true);\n setError(null);\n try {\n const sealed = loadSealed();\n if (!sealed) {\n setError(\"This browser has no wallet key stored.\");\n return;\n }\n setRecoveryKey(encodeRecoveryKey({ walletAddress: sealed.address, privateKey: await unlock(sealed) }));\n } catch (err) {\n const fallback = \"Could not unlock your key. Please try again.\";\n setError(describeError ? describeError(err, fallback) : fallback);\n } finally {\n setBusy(false);\n }\n };\n\n const copy = async () => {\n if (!recoveryKey) return;\n await navigator.clipboard.writeText(recoveryKey);\n setCopied(true);\n setTimeout(() => setCopied(false), 2000);\n };\n\n const hide = () => {\n setRecoveryKey(null);\n setCopied(false);\n };\n\n return (\n <div className=\"flex flex-col gap-3\">\n <div>\n <p className=\"text-sm font-semibold\">Recovery key</p>\n <p className=\"mt-1 text-xs text-muted-foreground leading-relaxed\">\n Save this somewhere private, such as a password manager. It restores your account if you\n lose access to every device you use. To start using a new phone or browser, approve it\n from a device you already have.\n </p>\n </div>\n\n {recoveryKey ? (\n <>\n <Alert variant=\"destructive\">\n <ShieldAlert className=\"h-4 w-4\" />\n <AlertDescription className=\"text-xs leading-relaxed\">\n <span className=\"font-semibold\">Anyone with this key controls your wallet.</span>{\" \"}\n Medialane will never ask you for it. Treat any message requesting it as an attempt to\n take your assets.\n </AlertDescription>\n </Alert>\n <code className=\"block break-all rounded-xl bg-muted px-3 py-2.5 font-mono text-xs select-all\">\n {recoveryKey}\n </code>\n <div className=\"flex items-center gap-2\">\n <Button onClick={copy} variant=\"outline\" size=\"sm\">\n {copied ? <Check className=\"mr-1.5 h-3.5 w-3.5\" /> : <Copy className=\"mr-1.5 h-3.5 w-3.5\" />}\n {copied ? \"Copied\" : \"Copy key\"}\n </Button>\n <Button onClick={hide} variant=\"ghost\" size=\"sm\">\n <EyeOff className=\"mr-1.5 h-3.5 w-3.5\" />\n Hide\n </Button>\n </div>\n </>\n ) : (\n <>\n {error && <p className=\"text-sm text-destructive\">{error}</p>}\n <Button onClick={reveal} disabled={busy} variant=\"outline\" size=\"sm\" className=\"self-start\">\n {busy ? <Loader2 className=\"mr-1.5 h-3.5 w-3.5 animate-spin\" /> : <KeyRound className=\"mr-1.5 h-3.5 w-3.5\" />}\n Show recovery key\n </Button>\n </>\n )}\n </div>\n );\n}\n"],"mappings":";AAoDM,SAUE,UATA,KADF;AAlDN,SAAS,gBAAgB;AACzB,SAAS,UAAU,MAAM,OAAO,QAAQ,SAAS,mBAAmB;AACpE,SAAS,yBAA2C;AACpD,SAAS,cAAc;AACvB,SAAS,OAAO,wBAAwB;AAQjC,SAAS,iBAAiB,EAAE,YAAY,QAAQ,cAAc,GAA0B;AAC7F,QAAM,CAAC,aAAa,cAAc,IAAI,SAAwB,IAAI;AAClE,QAAM,CAAC,MAAM,OAAO,IAAI,SAAS,KAAK;AACtC,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAwB,IAAI;AACtD,QAAM,CAAC,QAAQ,SAAS,IAAI,SAAS,KAAK;AAE1C,QAAM,SAAS,YAAY;AACzB,YAAQ,IAAI;AACZ,aAAS,IAAI;AACb,QAAI;AACF,YAAM,SAAS,WAAW;AAC1B,UAAI,CAAC,QAAQ;AACX,iBAAS,wCAAwC;AACjD;AAAA,MACF;AACA,qBAAe,kBAAkB,EAAE,eAAe,OAAO,SAAS,YAAY,MAAM,OAAO,MAAM,EAAE,CAAC,CAAC;AAAA,IACvG,SAAS,KAAK;AACZ,YAAM,WAAW;AACjB,eAAS,gBAAgB,cAAc,KAAK,QAAQ,IAAI,QAAQ;AAAA,IAClE,UAAE;AACA,cAAQ,KAAK;AAAA,IACf;AAAA,EACF;AAEA,QAAM,OAAO,YAAY;AACvB,QAAI,CAAC,YAAa;AAClB,UAAM,UAAU,UAAU,UAAU,WAAW;AAC/C,cAAU,IAAI;AACd,eAAW,MAAM,UAAU,KAAK,GAAG,GAAI;AAAA,EACzC;AAEA,QAAM,OAAO,MAAM;AACjB,mBAAe,IAAI;AACnB,cAAU,KAAK;AAAA,EACjB;AAEA,SACE,qBAAC,SAAI,WAAU,uBACb;AAAA,yBAAC,SACC;AAAA,0BAAC,OAAE,WAAU,yBAAwB,0BAAY;AAAA,MACjD,oBAAC,OAAE,WAAU,sDAAqD,6NAIlE;AAAA,OACF;AAAA,IAEC,cACC,iCACE;AAAA,2BAAC,SAAM,SAAQ,eACb;AAAA,4BAAC,eAAY,WAAU,WAAU;AAAA,QACjC,qBAAC,oBAAiB,WAAU,2BAC1B;AAAA,8BAAC,UAAK,WAAU,iBAAgB,wDAA0C;AAAA,UAAQ;AAAA,UAAI;AAAA,WAGxF;AAAA,SACF;AAAA,MACA,oBAAC,UAAK,WAAU,gFACb,uBACH;AAAA,MACA,qBAAC,SAAI,WAAU,2BACb;AAAA,6BAAC,UAAO,SAAS,MAAM,SAAQ,WAAU,MAAK,MAC3C;AAAA,mBAAS,oBAAC,SAAM,WAAU,sBAAqB,IAAK,oBAAC,QAAK,WAAU,sBAAqB;AAAA,UACzF,SAAS,WAAW;AAAA,WACvB;AAAA,QACA,qBAAC,UAAO,SAAS,MAAM,SAAQ,SAAQ,MAAK,MAC1C;AAAA,8BAAC,UAAO,WAAU,sBAAqB;AAAA,UAAE;AAAA,WAE3C;AAAA,SACF;AAAA,OACF,IAEA,iCACG;AAAA,eAAS,oBAAC,OAAE,WAAU,4BAA4B,iBAAM;AAAA,MACzD,qBAAC,UAAO,SAAS,QAAQ,UAAU,MAAM,SAAQ,WAAU,MAAK,MAAK,WAAU,cAC5E;AAAA,eAAO,oBAAC,WAAQ,WAAU,mCAAkC,IAAK,oBAAC,YAAS,WAAU,sBAAqB;AAAA,QAAG;AAAA,SAEhH;AAAA,OACF;AAAA,KAEJ;AAEJ;","names":[]}
|
package/dist/index.cjs
CHANGED
|
@@ -302,6 +302,7 @@ __export(index_exports, {
|
|
|
302
302
|
coinKindLabelPlural: () => import_coins.coinKindLabelPlural,
|
|
303
303
|
coinServiceIds: () => import_coins.coinServiceIds,
|
|
304
304
|
coinSupply: () => import_coins.coinSupply,
|
|
305
|
+
collectSitemapData: () => import_sitemap_data.collectSitemapData,
|
|
305
306
|
createRewardEarned: () => import_reward_earned.createRewardEarned,
|
|
306
307
|
derivePortfolioCounts: () => import_portfolio_counts.derivePortfolioCounts,
|
|
307
308
|
describeError: () => import_describe_error.describeError,
|
|
@@ -337,6 +338,8 @@ __export(index_exports, {
|
|
|
337
338
|
orderCoins: () => import_coin_order.orderCoins,
|
|
338
339
|
parsePriceDisplay: () => import_format.parsePriceDisplay,
|
|
339
340
|
pinAssetMetadata: () => import_ipfs_upload.pinAssetMetadata,
|
|
341
|
+
predictNextMembershipId: () => import_use_tiers.predictNextMembershipId,
|
|
342
|
+
predictNextTicketId: () => import_use_tiers.predictNextTicketId,
|
|
340
343
|
profileIdentity: () => import_profile_identity.profileIdentity,
|
|
341
344
|
queryKeyPrefix: () => import_query_keys.queryKeyPrefix,
|
|
342
345
|
queryKeys: () => import_query_keys.queryKeys,
|
|
@@ -359,6 +362,7 @@ __export(index_exports, {
|
|
|
359
362
|
usdPriceFor: () => import_use_usd_prices.usdPriceFor,
|
|
360
363
|
useActivities: () => import_use_activities.useActivities,
|
|
361
364
|
useActivitiesByAddress: () => import_use_activities.useActivitiesByAddress,
|
|
365
|
+
useCoinPrice: () => import_use_coin_price.useCoinPrice,
|
|
362
366
|
useCollection: () => import_use_collections.useCollection,
|
|
363
367
|
useCollectionFilters: () => import_collection_filters.useCollectionFilters,
|
|
364
368
|
useCollectionFloorListings: () => import_use_orders.useCollectionFloorListings,
|
|
@@ -369,25 +373,51 @@ __export(index_exports, {
|
|
|
369
373
|
useCounterOffers: () => import_use_orders.useCounterOffers,
|
|
370
374
|
useCreatorProfile: () => import_use_profiles.useCreatorProfile,
|
|
371
375
|
useCreators: () => import_use_creators.useCreators,
|
|
376
|
+
useDropCollections: () => import_use_drops.useDropCollections,
|
|
377
|
+
useDropInfo: () => import_use_drops.useDropInfo,
|
|
378
|
+
useDropMintStatus: () => import_use_drops.useDropMintStatus,
|
|
372
379
|
useFormField: () => import_form.useFormField,
|
|
373
380
|
useIntersectionActive: () => import_use_intersection_active.useIntersectionActive,
|
|
381
|
+
useIsMemberOf: () => import_use_tiers.useIsMemberOf,
|
|
374
382
|
useLaunchpadFilter: () => import_launchpad_services.useLaunchpadFilter,
|
|
375
383
|
useLeaderboard: () => import_use_rewards.useLeaderboard,
|
|
376
384
|
useMedialaneClient: () => import_use_medialane_client.useMedialaneClient,
|
|
385
|
+
useMembershipList: () => import_use_tiers.useMembershipList,
|
|
386
|
+
useMembershipOnchain: () => import_use_tiers.useMembershipOnchain,
|
|
387
|
+
useMyClubCollections: () => import_use_tiers.useMyClubCollections,
|
|
388
|
+
useMyDrops: () => import_use_drops.useMyDrops,
|
|
389
|
+
useMyPopEvents: () => import_use_pop.useMyPopEvents,
|
|
390
|
+
useMySponsorshipDealCounts: () => import_use_sponsorship.useMySponsorshipDealCounts,
|
|
391
|
+
useMyTicketCollections: () => import_use_tiers.useMyTicketCollections,
|
|
377
392
|
useNavAccountSheet: () => import_nav_shell.useNavAccountSheet,
|
|
378
393
|
useNavCommandMenu: () => import_nav_command_menu.useNavCommandMenu,
|
|
379
394
|
useNearbyCollectionTokens: () => import_use_collections.useNearbyCollectionTokens,
|
|
380
395
|
useNotifications: () => import_use_notifications.useNotifications,
|
|
396
|
+
useOnChainDropState: () => import_use_drops.useOnChainDropState,
|
|
381
397
|
useOrder: () => import_use_orders.useOrder,
|
|
382
398
|
useOrders: () => import_use_orders.useOrders,
|
|
399
|
+
usePendingProposalsForAsset: () => import_use_sponsorship.usePendingProposalsForAsset,
|
|
400
|
+
usePlatformStats: () => import_use_platform_stats.usePlatformStats,
|
|
401
|
+
usePopClaimStatus: () => import_use_pop.usePopClaimStatus,
|
|
402
|
+
usePopCollections: () => import_use_pop.usePopCollections,
|
|
403
|
+
usePriceMap: () => import_use_coin_price.usePriceMap,
|
|
383
404
|
useReceivedOffers: () => import_use_orders.useReceivedOffers,
|
|
384
405
|
useRewards: () => import_use_rewards.useRewards,
|
|
385
406
|
useRewardsBatch: () => import_use_rewards.useRewardsBatch,
|
|
386
407
|
useRewardsCelebrations: () => import_use_rewards_celebrations.useRewardsCelebrations,
|
|
387
408
|
useRewardsConfig: () => import_use_rewards.useRewardsConfig,
|
|
388
409
|
useRewardsEvents: () => import_use_rewards.useRewardsEvents,
|
|
410
|
+
useSponsorshipBids: () => import_use_sponsorship.useSponsorshipBids,
|
|
411
|
+
useSponsorshipLicenses: () => import_use_sponsorship.useSponsorshipLicenses,
|
|
412
|
+
useSponsorshipOffer: () => import_use_sponsorship.useSponsorshipOffer,
|
|
413
|
+
useSponsorshipOffers: () => import_use_sponsorship.useSponsorshipOffers,
|
|
414
|
+
useSponsorshipProposal: () => import_use_sponsorship.useSponsorshipProposal,
|
|
415
|
+
useSponsorshipProposals: () => import_use_sponsorship.useSponsorshipProposals,
|
|
416
|
+
useTicketList: () => import_use_tiers.useTicketList,
|
|
417
|
+
useTicketOnchain: () => import_use_tiers.useTicketOnchain,
|
|
389
418
|
useTokenListings: () => import_use_orders.useTokenListings,
|
|
390
419
|
useTokenRemixes: () => import_use_remix_offers.useTokenRemixes,
|
|
420
|
+
useTokensByIpType: () => import_use_tokens_by_ip_type.useTokensByIpType,
|
|
391
421
|
useUsdPrices: () => import_use_usd_prices.useUsdPrices,
|
|
392
422
|
useUserOrders: () => import_use_orders.useUserOrders
|
|
393
423
|
});
|
|
@@ -567,6 +597,14 @@ var import_creator_analytics = require("./components/creator-analytics.js");
|
|
|
567
597
|
var import_dialog = require("./components/dialog.js");
|
|
568
598
|
var import_self_fund_consent_dialog = require("./components/wallet/self-fund-consent-dialog.js");
|
|
569
599
|
var import_export_key_section = require("./components/wallet/export-key-section.js");
|
|
600
|
+
var import_use_drops = require("./utils/use-drops.js");
|
|
601
|
+
var import_use_pop = require("./utils/use-pop.js");
|
|
602
|
+
var import_use_platform_stats = require("./utils/use-platform-stats.js");
|
|
603
|
+
var import_use_tokens_by_ip_type = require("./utils/use-tokens-by-ip-type.js");
|
|
604
|
+
var import_use_coin_price = require("./utils/use-coin-price.js");
|
|
605
|
+
var import_use_sponsorship = require("./utils/use-sponsorship.js");
|
|
606
|
+
var import_use_tiers = require("./utils/use-tiers.js");
|
|
607
|
+
var import_sitemap_data = require("./utils/sitemap-data.js");
|
|
570
608
|
// Annotate the CommonJS export names for ESM import in node:
|
|
571
609
|
0 && (module.exports = {
|
|
572
610
|
ACTIVITY_MESSAGES,
|
|
@@ -853,6 +891,7 @@ var import_export_key_section = require("./components/wallet/export-key-section.
|
|
|
853
891
|
coinKindLabelPlural,
|
|
854
892
|
coinServiceIds,
|
|
855
893
|
coinSupply,
|
|
894
|
+
collectSitemapData,
|
|
856
895
|
createRewardEarned,
|
|
857
896
|
derivePortfolioCounts,
|
|
858
897
|
describeError,
|
|
@@ -888,6 +927,8 @@ var import_export_key_section = require("./components/wallet/export-key-section.
|
|
|
888
927
|
orderCoins,
|
|
889
928
|
parsePriceDisplay,
|
|
890
929
|
pinAssetMetadata,
|
|
930
|
+
predictNextMembershipId,
|
|
931
|
+
predictNextTicketId,
|
|
891
932
|
profileIdentity,
|
|
892
933
|
queryKeyPrefix,
|
|
893
934
|
queryKeys,
|
|
@@ -910,6 +951,7 @@ var import_export_key_section = require("./components/wallet/export-key-section.
|
|
|
910
951
|
usdPriceFor,
|
|
911
952
|
useActivities,
|
|
912
953
|
useActivitiesByAddress,
|
|
954
|
+
useCoinPrice,
|
|
913
955
|
useCollection,
|
|
914
956
|
useCollectionFilters,
|
|
915
957
|
useCollectionFloorListings,
|
|
@@ -920,25 +962,51 @@ var import_export_key_section = require("./components/wallet/export-key-section.
|
|
|
920
962
|
useCounterOffers,
|
|
921
963
|
useCreatorProfile,
|
|
922
964
|
useCreators,
|
|
965
|
+
useDropCollections,
|
|
966
|
+
useDropInfo,
|
|
967
|
+
useDropMintStatus,
|
|
923
968
|
useFormField,
|
|
924
969
|
useIntersectionActive,
|
|
970
|
+
useIsMemberOf,
|
|
925
971
|
useLaunchpadFilter,
|
|
926
972
|
useLeaderboard,
|
|
927
973
|
useMedialaneClient,
|
|
974
|
+
useMembershipList,
|
|
975
|
+
useMembershipOnchain,
|
|
976
|
+
useMyClubCollections,
|
|
977
|
+
useMyDrops,
|
|
978
|
+
useMyPopEvents,
|
|
979
|
+
useMySponsorshipDealCounts,
|
|
980
|
+
useMyTicketCollections,
|
|
928
981
|
useNavAccountSheet,
|
|
929
982
|
useNavCommandMenu,
|
|
930
983
|
useNearbyCollectionTokens,
|
|
931
984
|
useNotifications,
|
|
985
|
+
useOnChainDropState,
|
|
932
986
|
useOrder,
|
|
933
987
|
useOrders,
|
|
988
|
+
usePendingProposalsForAsset,
|
|
989
|
+
usePlatformStats,
|
|
990
|
+
usePopClaimStatus,
|
|
991
|
+
usePopCollections,
|
|
992
|
+
usePriceMap,
|
|
934
993
|
useReceivedOffers,
|
|
935
994
|
useRewards,
|
|
936
995
|
useRewardsBatch,
|
|
937
996
|
useRewardsCelebrations,
|
|
938
997
|
useRewardsConfig,
|
|
939
998
|
useRewardsEvents,
|
|
999
|
+
useSponsorshipBids,
|
|
1000
|
+
useSponsorshipLicenses,
|
|
1001
|
+
useSponsorshipOffer,
|
|
1002
|
+
useSponsorshipOffers,
|
|
1003
|
+
useSponsorshipProposal,
|
|
1004
|
+
useSponsorshipProposals,
|
|
1005
|
+
useTicketList,
|
|
1006
|
+
useTicketOnchain,
|
|
940
1007
|
useTokenListings,
|
|
941
1008
|
useTokenRemixes,
|
|
1009
|
+
useTokensByIpType,
|
|
942
1010
|
useUsdPrices,
|
|
943
1011
|
useUserOrders
|
|
944
1012
|
});
|