@medialane/ui 0.285.0 → 0.287.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.
Files changed (65) hide show
  1. package/dist/components/account/input-otp.d.cts +2 -2
  2. package/dist/components/account/input-otp.d.ts +2 -2
  3. package/dist/components/button.d.cts +2 -2
  4. package/dist/components/button.d.ts +2 -2
  5. package/dist/components/collection-settings.cjs +350 -0
  6. package/dist/components/collection-settings.cjs.map +1 -0
  7. package/dist/components/collection-settings.d.cts +7 -0
  8. package/dist/components/collection-settings.d.ts +7 -0
  9. package/dist/components/collection-settings.js +335 -0
  10. package/dist/components/collection-settings.js.map +1 -0
  11. package/dist/components/collection-slug-claim.cjs +219 -0
  12. package/dist/components/collection-slug-claim.cjs.map +1 -0
  13. package/dist/components/collection-slug-claim.d.cts +10 -0
  14. package/dist/components/collection-slug-claim.d.ts +10 -0
  15. package/dist/components/collection-slug-claim.js +185 -0
  16. package/dist/components/collection-slug-claim.js.map +1 -0
  17. package/dist/components/launchpad/edition-mint-schema.d.cts +2 -2
  18. package/dist/components/launchpad/edition-mint-schema.d.ts +2 -2
  19. package/dist/components/marketplace-filters.cjs +253 -0
  20. package/dist/components/marketplace-filters.cjs.map +1 -0
  21. package/dist/components/marketplace-filters.d.cts +34 -0
  22. package/dist/components/marketplace-filters.d.ts +34 -0
  23. package/dist/components/marketplace-filters.js +216 -0
  24. package/dist/components/marketplace-filters.js.map +1 -0
  25. package/dist/components/marketplace-search.cjs +175 -0
  26. package/dist/components/marketplace-search.cjs.map +1 -0
  27. package/dist/components/marketplace-search.d.cts +11 -0
  28. package/dist/components/marketplace-search.d.ts +11 -0
  29. package/dist/components/marketplace-search.js +140 -0
  30. package/dist/components/marketplace-search.js.map +1 -0
  31. package/dist/components/medialane-app.cjs.map +1 -1
  32. package/dist/components/medialane-app.d.cts +1 -0
  33. package/dist/components/medialane-app.d.ts +1 -0
  34. package/dist/components/medialane-app.js.map +1 -1
  35. package/dist/components/settings-section.cjs +65 -0
  36. package/dist/components/settings-section.cjs.map +1 -0
  37. package/dist/components/settings-section.d.cts +24 -0
  38. package/dist/components/settings-section.d.ts +24 -0
  39. package/dist/components/settings-section.js +38 -0
  40. package/dist/components/settings-section.js.map +1 -0
  41. package/dist/index.cjs +20 -0
  42. package/dist/index.cjs.map +1 -1
  43. package/dist/index.d.cts +4 -0
  44. package/dist/index.d.ts +4 -0
  45. package/dist/index.js +12 -0
  46. package/dist/index.js.map +1 -1
  47. package/dist/utils/collection-settings-form.cjs +77 -0
  48. package/dist/utils/collection-settings-form.cjs.map +1 -0
  49. package/dist/utils/collection-settings-form.d.cts +21 -0
  50. package/dist/utils/collection-settings-form.d.ts +21 -0
  51. package/dist/utils/collection-settings-form.js +51 -0
  52. package/dist/utils/collection-settings-form.js.map +1 -0
  53. package/dist/utils/use-collection-settings.cjs +83 -0
  54. package/dist/utils/use-collection-settings.cjs.map +1 -0
  55. package/dist/utils/use-collection-settings.d.cts +58 -0
  56. package/dist/utils/use-collection-settings.d.ts +58 -0
  57. package/dist/utils/use-collection-settings.js +59 -0
  58. package/dist/utils/use-collection-settings.js.map +1 -0
  59. package/dist/utils/use-debounced-value.cjs +38 -0
  60. package/dist/utils/use-debounced-value.cjs.map +1 -0
  61. package/dist/utils/use-debounced-value.d.cts +3 -0
  62. package/dist/utils/use-debounced-value.d.ts +3 -0
  63. package/dist/utils/use-debounced-value.js +14 -0
  64. package/dist/utils/use-debounced-value.js.map +1 -0
  65. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/components/marketplace-search.tsx"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useState, type ComponentProps } from \"react\";\nimport { useRouter } from \"next/navigation\";\nimport Image from \"./image.js\";\nimport Link from \"./link.js\";\nimport { Search, X } from \"lucide-react\";\nimport { assetHref, collectionHref, type ApiSearchResult } from \"@medialane/sdk\";\nimport { Input } from \"./input.js\";\nimport { useMedialaneClient } from \"../utils/use-medialane-client.js\";\nimport { useDebouncedValue } from \"../utils/use-debounced-value.js\";\nimport { useImageUrl } from \"../utils/use-image-url.js\";\n\nexport function SearchInput({ value, onClear, ...props }: ComponentProps<typeof Input> & { value: string; onClear: () => void }) {\n return (\n <div className=\"relative\">\n <Search className=\"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground\" />\n <Input value={value} className=\"pl-9 pr-9\" {...props} />\n {value && (\n <button\n className=\"absolute right-3 top-1/2 -translate-y-1/2 text-muted-foreground hover:text-foreground\"\n onClick={onClear}\n >\n <X className=\"h-3.5 w-3.5\" />\n </button>\n )}\n </div>\n );\n}\n\nexport function MarketplaceSearch() {\n const resolveImage = useImageUrl();\n const client = useMedialaneClient();\n const router = useRouter();\n const [query, setQuery] = useState(\"\");\n const [results, setResults] = useState<ApiSearchResult | null>(null);\n const [open, setOpen] = useState(false);\n const debouncedQuery = useDebouncedValue(query.trim(), 300);\n\n useEffect(() => {\n if (!debouncedQuery) {\n setResults(null);\n setOpen(false);\n return;\n }\n let current = true;\n client.api\n .search(debouncedQuery, 8)\n .then((res) => {\n if (!current) return;\n setResults(res.data);\n setOpen(true);\n })\n .catch(() => {\n if (current) setResults(null);\n });\n return () => {\n current = false;\n };\n }, [debouncedQuery, client]);\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === \"Enter\" && query.trim()) {\n setOpen(false);\n router.push(`/search?q=${encodeURIComponent(query.trim())}`);\n }\n };\n\n const hasResults =\n results && ((results.tokens?.length ?? 0) > 0 || (results.collections?.length ?? 0) > 0);\n\n return (\n <div className=\"relative w-full sm:max-w-sm\">\n <SearchInput\n placeholder=\"Search creative works\"\n value={query}\n onChange={(e) => setQuery(e.target.value)}\n onKeyDown={handleKeyDown}\n onFocus={() => hasResults && setOpen(true)}\n onBlur={() => setOpen(false)}\n onClear={() => { setQuery(\"\"); setResults(null); setOpen(false); }}\n />\n\n {open && hasResults && (\n <div\n onMouseDown={(e) => e.preventDefault()}\n className=\"absolute top-full left-0 right-0 mt-1 bg-popover border border-border rounded-xl shadow-lg z-50 overflow-hidden\"\n >\n {(results.tokens?.length ?? 0) > 0 && (\n <div>\n <div className=\"px-3 py-1.5 text-2xs font-semibold text-muted-foreground bg-muted/30\">\n Tokens\n </div>\n {results.tokens!.map((t) => {\n const img = resolveImage(t.image);\n return (\n <Link\n key={`${t.contractAddress}-${t.tokenId}`}\n href={assetHref(\"STARKNET\", t.contractAddress, t.tokenId)}\n className=\"flex items-center gap-3 px-3 py-2.5 hover:bg-muted/50 transition-colors\"\n >\n <div className=\"relative h-8 w-8 rounded-lg bg-muted shrink-0 overflow-hidden\">\n {img && <Image src={img} alt=\"\" fill className=\"object-cover\" unoptimized />}\n </div>\n <div className=\"min-w-0\">\n <p className=\"text-sm font-medium truncate\">{t.name ?? `Token #${t.tokenId}`}</p>\n <p className=\"text-xs text-muted-foreground tabular-nums truncate\">{t.contractAddress.slice(0, 14)}…</p>\n </div>\n </Link>\n );\n })}\n </div>\n )}\n {(results.collections?.length ?? 0) > 0 && (\n <div>\n <div className=\"px-3 py-1.5 text-2xs font-semibold text-muted-foreground bg-muted/30\">\n Collections\n </div>\n {results.collections!.map((c) => {\n const imgUrl = resolveImage(c.image);\n return (\n <Link\n key={c.contractAddress}\n href={collectionHref(\"STARKNET\", c.contractAddress)}\n className=\"flex items-center gap-3 px-3 py-2.5 hover:bg-muted/50 transition-colors\"\n >\n <div className=\"relative h-8 w-8 rounded-lg bg-gradient-to-br from-primary/20 to-brand-purple/20 flex items-center justify-center text-xs font-bold shrink-0 overflow-hidden\">\n {imgUrl ? (\n <Image src={imgUrl} alt=\"\" fill className=\"object-cover\" unoptimized />\n ) : (\n <span>{c.name?.charAt(0) ?? \"?\"}</span>\n )}\n </div>\n <div className=\"min-w-0\">\n <p className=\"text-sm font-medium truncate\">{c.name}</p>\n <p className=\"text-xs text-muted-foreground tabular-nums truncate\">{c.contractAddress.slice(0, 14)}…</p>\n </div>\n </Link>\n );\n })}\n </div>\n )}\n </div>\n )}\n </div>\n );\n}\n"],"mappings":"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","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/components/medialane-app.tsx"],"sourcesContent":["\"use client\";\n\nimport { createContext, useContext, type ComponentType, type ElementType, type ReactNode } from \"react\";\nimport type { MedialaneClient } from \"@medialane/sdk/starknet\";\nimport type { FastMintSigner } from \"./fast-mint/types.js\";\nimport type { ApiToken } from \"@medialane/sdk\";\nimport type { ImageResolver } from \"../utils/ipfs.js\";\n\nexport type AssetRef = Pick<ApiToken, \"chain\" | \"contractAddress\" | \"tokenId\">;\n\nexport interface CompanionApp {\n title: string;\n description: string;\n icon: ElementType;\n origin: string;\n}\n\nexport type ReportTarget =\n | { type: \"TOKEN\"; contract: string; tokenId: string; name?: string }\n | { type: \"COLLECTION\"; contract: string; name?: string }\n | { type: \"CREATOR\"; address: string; name?: string }\n | { type: \"COMMENT\"; commentId: string };\n\nexport type ReportDialogSlot = ComponentType<{ open: boolean; onOpenChange: (open: boolean) => void; target: ReportTarget }>;\n\nexport interface MedialaneApp {\n getClient: () => MedialaneClient;\n getSigner: () => Promise<FastMintSigner> | FastMintSigner;\n walletAddress: string | null;\n walletLoading?: boolean;\n onRequireWallet: () => void;\n releaseSigner?: () => void;\n ensureSignedIn?: () => Promise<void>;\n connectLabel?: string;\n companion?: CompanionApp;\n ReportDialog?: ReportDialogSlot;\n resolveImage?: ImageResolver;\n}\n\nexport const MedialaneAppContext = createContext<MedialaneApp | null>(null);\n\nexport function MedialaneAppProvider({ value, children }: { value: MedialaneApp; children: ReactNode }) {\n return <MedialaneAppContext.Provider value={value}>{children}</MedialaneAppContext.Provider>;\n}\n\nexport function useMedialaneApp(): MedialaneApp {\n const app = useContext(MedialaneAppContext);\n if (!app) throw new Error(\"MedialaneAppProvider missing\");\n return app;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA0CS;AAxCT,mBAAgG;AAqCzF,MAAM,0BAAsB,4BAAmC,IAAI;AAEnE,SAAS,qBAAqB,EAAE,OAAO,SAAS,GAAiD;AACtG,SAAO,4CAAC,oBAAoB,UAApB,EAA6B,OAAe,UAAS;AAC/D;AAEO,SAAS,kBAAgC;AAC9C,QAAM,UAAM,yBAAW,mBAAmB;AAC1C,MAAI,CAAC,IAAK,OAAM,IAAI,MAAM,8BAA8B;AACxD,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../src/components/medialane-app.tsx"],"sourcesContent":["\"use client\";\n\nimport { createContext, useContext, type ComponentType, type ElementType, type ReactNode } from \"react\";\nimport type { MedialaneClient } from \"@medialane/sdk/starknet\";\nimport type { FastMintSigner } from \"./fast-mint/types.js\";\nimport type { ApiToken } from \"@medialane/sdk\";\nimport type { ImageResolver } from \"../utils/ipfs.js\";\n\nexport type AssetRef = Pick<ApiToken, \"chain\" | \"contractAddress\" | \"tokenId\">;\n\nexport interface CompanionApp {\n title: string;\n description: string;\n icon: ElementType;\n origin: string;\n}\n\nexport type ReportTarget =\n | { type: \"TOKEN\"; contract: string; tokenId: string; name?: string }\n | { type: \"COLLECTION\"; contract: string; name?: string }\n | { type: \"CREATOR\"; address: string; name?: string }\n | { type: \"COMMENT\"; commentId: string };\n\nexport type ReportDialogSlot = ComponentType<{ open: boolean; onOpenChange: (open: boolean) => void; target: ReportTarget }>;\n\nexport interface MedialaneApp {\n getClient: () => MedialaneClient;\n getSigner: () => Promise<FastMintSigner> | FastMintSigner;\n walletAddress: string | null;\n walletLoading?: boolean;\n onRequireWallet: () => void;\n releaseSigner?: () => void;\n ensureSignedIn?: () => Promise<void>;\n connectLabel?: string;\n verifyEmailHref?: string;\n companion?: CompanionApp;\n ReportDialog?: ReportDialogSlot;\n resolveImage?: ImageResolver;\n}\n\nexport const MedialaneAppContext = createContext<MedialaneApp | null>(null);\n\nexport function MedialaneAppProvider({ value, children }: { value: MedialaneApp; children: ReactNode }) {\n return <MedialaneAppContext.Provider value={value}>{children}</MedialaneAppContext.Provider>;\n}\n\nexport function useMedialaneApp(): MedialaneApp {\n const app = useContext(MedialaneAppContext);\n if (!app) throw new Error(\"MedialaneAppProvider missing\");\n return app;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA2CS;AAzCT,mBAAgG;AAsCzF,MAAM,0BAAsB,4BAAmC,IAAI;AAEnE,SAAS,qBAAqB,EAAE,OAAO,SAAS,GAAiD;AACtG,SAAO,4CAAC,oBAAoB,UAApB,EAA6B,OAAe,UAAS;AAC/D;AAEO,SAAS,kBAAgC;AAC9C,QAAM,UAAM,yBAAW,mBAAmB;AAC1C,MAAI,CAAC,IAAK,OAAM,IAAI,MAAM,8BAA8B;AACxD,SAAO;AACT;","names":[]}
@@ -45,6 +45,7 @@ interface MedialaneApp {
45
45
  releaseSigner?: () => void;
46
46
  ensureSignedIn?: () => Promise<void>;
47
47
  connectLabel?: string;
48
+ verifyEmailHref?: string;
48
49
  companion?: CompanionApp;
49
50
  ReportDialog?: ReportDialogSlot;
50
51
  resolveImage?: ImageResolver;
@@ -45,6 +45,7 @@ interface MedialaneApp {
45
45
  releaseSigner?: () => void;
46
46
  ensureSignedIn?: () => Promise<void>;
47
47
  connectLabel?: string;
48
+ verifyEmailHref?: string;
48
49
  companion?: CompanionApp;
49
50
  ReportDialog?: ReportDialogSlot;
50
51
  resolveImage?: ImageResolver;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/components/medialane-app.tsx"],"sourcesContent":["\"use client\";\n\nimport { createContext, useContext, type ComponentType, type ElementType, type ReactNode } from \"react\";\nimport type { MedialaneClient } from \"@medialane/sdk/starknet\";\nimport type { FastMintSigner } from \"./fast-mint/types.js\";\nimport type { ApiToken } from \"@medialane/sdk\";\nimport type { ImageResolver } from \"../utils/ipfs.js\";\n\nexport type AssetRef = Pick<ApiToken, \"chain\" | \"contractAddress\" | \"tokenId\">;\n\nexport interface CompanionApp {\n title: string;\n description: string;\n icon: ElementType;\n origin: string;\n}\n\nexport type ReportTarget =\n | { type: \"TOKEN\"; contract: string; tokenId: string; name?: string }\n | { type: \"COLLECTION\"; contract: string; name?: string }\n | { type: \"CREATOR\"; address: string; name?: string }\n | { type: \"COMMENT\"; commentId: string };\n\nexport type ReportDialogSlot = ComponentType<{ open: boolean; onOpenChange: (open: boolean) => void; target: ReportTarget }>;\n\nexport interface MedialaneApp {\n getClient: () => MedialaneClient;\n getSigner: () => Promise<FastMintSigner> | FastMintSigner;\n walletAddress: string | null;\n walletLoading?: boolean;\n onRequireWallet: () => void;\n releaseSigner?: () => void;\n ensureSignedIn?: () => Promise<void>;\n connectLabel?: string;\n companion?: CompanionApp;\n ReportDialog?: ReportDialogSlot;\n resolveImage?: ImageResolver;\n}\n\nexport const MedialaneAppContext = createContext<MedialaneApp | null>(null);\n\nexport function MedialaneAppProvider({ value, children }: { value: MedialaneApp; children: ReactNode }) {\n return <MedialaneAppContext.Provider value={value}>{children}</MedialaneAppContext.Provider>;\n}\n\nexport function useMedialaneApp(): MedialaneApp {\n const app = useContext(MedialaneAppContext);\n if (!app) throw new Error(\"MedialaneAppProvider missing\");\n return app;\n}\n"],"mappings":";AA0CS;AAxCT,SAAS,eAAe,kBAAwE;AAqCzF,MAAM,sBAAsB,cAAmC,IAAI;AAEnE,SAAS,qBAAqB,EAAE,OAAO,SAAS,GAAiD;AACtG,SAAO,oBAAC,oBAAoB,UAApB,EAA6B,OAAe,UAAS;AAC/D;AAEO,SAAS,kBAAgC;AAC9C,QAAM,MAAM,WAAW,mBAAmB;AAC1C,MAAI,CAAC,IAAK,OAAM,IAAI,MAAM,8BAA8B;AACxD,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../src/components/medialane-app.tsx"],"sourcesContent":["\"use client\";\n\nimport { createContext, useContext, type ComponentType, type ElementType, type ReactNode } from \"react\";\nimport type { MedialaneClient } from \"@medialane/sdk/starknet\";\nimport type { FastMintSigner } from \"./fast-mint/types.js\";\nimport type { ApiToken } from \"@medialane/sdk\";\nimport type { ImageResolver } from \"../utils/ipfs.js\";\n\nexport type AssetRef = Pick<ApiToken, \"chain\" | \"contractAddress\" | \"tokenId\">;\n\nexport interface CompanionApp {\n title: string;\n description: string;\n icon: ElementType;\n origin: string;\n}\n\nexport type ReportTarget =\n | { type: \"TOKEN\"; contract: string; tokenId: string; name?: string }\n | { type: \"COLLECTION\"; contract: string; name?: string }\n | { type: \"CREATOR\"; address: string; name?: string }\n | { type: \"COMMENT\"; commentId: string };\n\nexport type ReportDialogSlot = ComponentType<{ open: boolean; onOpenChange: (open: boolean) => void; target: ReportTarget }>;\n\nexport interface MedialaneApp {\n getClient: () => MedialaneClient;\n getSigner: () => Promise<FastMintSigner> | FastMintSigner;\n walletAddress: string | null;\n walletLoading?: boolean;\n onRequireWallet: () => void;\n releaseSigner?: () => void;\n ensureSignedIn?: () => Promise<void>;\n connectLabel?: string;\n verifyEmailHref?: string;\n companion?: CompanionApp;\n ReportDialog?: ReportDialogSlot;\n resolveImage?: ImageResolver;\n}\n\nexport const MedialaneAppContext = createContext<MedialaneApp | null>(null);\n\nexport function MedialaneAppProvider({ value, children }: { value: MedialaneApp; children: ReactNode }) {\n return <MedialaneAppContext.Provider value={value}>{children}</MedialaneAppContext.Provider>;\n}\n\nexport function useMedialaneApp(): MedialaneApp {\n const app = useContext(MedialaneAppContext);\n if (!app) throw new Error(\"MedialaneAppProvider missing\");\n return app;\n}\n"],"mappings":";AA2CS;AAzCT,SAAS,eAAe,kBAAwE;AAsCzF,MAAM,sBAAsB,cAAmC,IAAI;AAEnE,SAAS,qBAAqB,EAAE,OAAO,SAAS,GAAiD;AACtG,SAAO,oBAAC,oBAAoB,UAApB,EAA6B,OAAe,UAAS;AAC/D;AAEO,SAAS,kBAAgC;AAC9C,QAAM,MAAM,WAAW,mBAAmB;AAC1C,MAAI,CAAC,IAAK,OAAM,IAAI,MAAM,8BAA8B;AACxD,SAAO;AACT;","names":[]}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ "use client";
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+ var settings_section_exports = {};
21
+ __export(settings_section_exports, {
22
+ FieldRow: () => FieldRow,
23
+ HelperText: () => HelperText,
24
+ SectionCard: () => SectionCard,
25
+ SectionHeader: () => SectionHeader
26
+ });
27
+ module.exports = __toCommonJS(settings_section_exports);
28
+ var import_jsx_runtime = require("react/jsx-runtime");
29
+ var import_cn = require("../utils/cn.js");
30
+ function SectionCard({ children, className, id }) {
31
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { id, className: (0, import_cn.cn)("bg-card border border-border rounded-xl p-5 space-y-4", className), children });
32
+ }
33
+ function SectionHeader({
34
+ icon: Icon,
35
+ title,
36
+ description,
37
+ badge,
38
+ iconClass = "text-muted-foreground",
39
+ bgClass = "bg-muted"
40
+ }) {
41
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-start gap-3 pb-1", children: [
42
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: (0, import_cn.cn)("h-8 w-8 rounded-lg flex items-center justify-center shrink-0 mt-0.5", bgClass), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Icon, { className: (0, import_cn.cn)("h-4 w-4", iconClass) }) }),
43
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex-1 min-w-0", children: [
44
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center gap-2 flex-wrap", children: [
45
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h3", { className: "text-sm font-semibold text-foreground", children: title }),
46
+ badge
47
+ ] }),
48
+ description && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-xs text-muted-foreground mt-0.5 leading-relaxed", children: description })
49
+ ] })
50
+ ] });
51
+ }
52
+ function FieldRow({ children }) {
53
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "space-y-1.5", children });
54
+ }
55
+ function HelperText({ children }) {
56
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-xs text-muted-foreground leading-relaxed", children });
57
+ }
58
+ // Annotate the CommonJS export names for ESM import in node:
59
+ 0 && (module.exports = {
60
+ FieldRow,
61
+ HelperText,
62
+ SectionCard,
63
+ SectionHeader
64
+ });
65
+ //# sourceMappingURL=settings-section.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/components/settings-section.tsx"],"sourcesContent":["\"use client\";\n\nimport type { ElementType, ReactNode } from \"react\";\nimport { cn } from \"../utils/cn.js\";\n\nexport function SectionCard({ children, className, id }: { children: ReactNode; className?: string; id?: string }) {\n return (\n <div id={id} className={cn(\"bg-card border border-border rounded-xl p-5 space-y-4\", className)}>\n {children}\n </div>\n );\n}\n\nexport function SectionHeader({\n icon: Icon,\n title,\n description,\n badge,\n iconClass = \"text-muted-foreground\",\n bgClass = \"bg-muted\",\n}: {\n icon: ElementType;\n title: string;\n description?: string;\n badge?: ReactNode;\n iconClass?: string;\n bgClass?: string;\n}) {\n return (\n <div className=\"flex items-start gap-3 pb-1\">\n <div className={cn(\"h-8 w-8 rounded-lg flex items-center justify-center shrink-0 mt-0.5\", bgClass)}>\n <Icon className={cn(\"h-4 w-4\", iconClass)} />\n </div>\n <div className=\"flex-1 min-w-0\">\n <div className=\"flex items-center gap-2 flex-wrap\">\n <h3 className=\"text-sm font-semibold text-foreground\">{title}</h3>\n {badge}\n </div>\n {description && <p className=\"text-xs text-muted-foreground mt-0.5 leading-relaxed\">{description}</p>}\n </div>\n </div>\n );\n}\n\nexport function FieldRow({ children }: { children: ReactNode }) {\n return <div className=\"space-y-1.5\">{children}</div>;\n}\n\nexport function HelperText({ children }: { children: ReactNode }) {\n return <p className=\"text-xs text-muted-foreground leading-relaxed\">{children}</p>;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOI;AAJJ,gBAAmB;AAEZ,SAAS,YAAY,EAAE,UAAU,WAAW,GAAG,GAA6D;AACjH,SACE,4CAAC,SAAI,IAAQ,eAAW,cAAG,yDAAyD,SAAS,GAC1F,UACH;AAEJ;AAEO,SAAS,cAAc;AAAA,EAC5B,MAAM;AAAA,EACN;AAAA,EACA;AAAA,EACA;AAAA,EACA,YAAY;AAAA,EACZ,UAAU;AACZ,GAOG;AACD,SACE,6CAAC,SAAI,WAAU,+BACb;AAAA,gDAAC,SAAI,eAAW,cAAG,uEAAuE,OAAO,GAC/F,sDAAC,QAAK,eAAW,cAAG,WAAW,SAAS,GAAG,GAC7C;AAAA,IACA,6CAAC,SAAI,WAAU,kBACb;AAAA,mDAAC,SAAI,WAAU,qCACb;AAAA,oDAAC,QAAG,WAAU,yCAAyC,iBAAM;AAAA,QAC5D;AAAA,SACH;AAAA,MACC,eAAe,4CAAC,OAAE,WAAU,wDAAwD,uBAAY;AAAA,OACnG;AAAA,KACF;AAEJ;AAEO,SAAS,SAAS,EAAE,SAAS,GAA4B;AAC9D,SAAO,4CAAC,SAAI,WAAU,eAAe,UAAS;AAChD;AAEO,SAAS,WAAW,EAAE,SAAS,GAA4B;AAChE,SAAO,4CAAC,OAAE,WAAU,iDAAiD,UAAS;AAChF;","names":[]}
@@ -0,0 +1,24 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { ReactNode, ElementType } from 'react';
3
+
4
+ declare function SectionCard({ children, className, id }: {
5
+ children: ReactNode;
6
+ className?: string;
7
+ id?: string;
8
+ }): react_jsx_runtime.JSX.Element;
9
+ declare function SectionHeader({ icon: Icon, title, description, badge, iconClass, bgClass, }: {
10
+ icon: ElementType;
11
+ title: string;
12
+ description?: string;
13
+ badge?: ReactNode;
14
+ iconClass?: string;
15
+ bgClass?: string;
16
+ }): react_jsx_runtime.JSX.Element;
17
+ declare function FieldRow({ children }: {
18
+ children: ReactNode;
19
+ }): react_jsx_runtime.JSX.Element;
20
+ declare function HelperText({ children }: {
21
+ children: ReactNode;
22
+ }): react_jsx_runtime.JSX.Element;
23
+
24
+ export { FieldRow, HelperText, SectionCard, SectionHeader };
@@ -0,0 +1,24 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { ReactNode, ElementType } from 'react';
3
+
4
+ declare function SectionCard({ children, className, id }: {
5
+ children: ReactNode;
6
+ className?: string;
7
+ id?: string;
8
+ }): react_jsx_runtime.JSX.Element;
9
+ declare function SectionHeader({ icon: Icon, title, description, badge, iconClass, bgClass, }: {
10
+ icon: ElementType;
11
+ title: string;
12
+ description?: string;
13
+ badge?: ReactNode;
14
+ iconClass?: string;
15
+ bgClass?: string;
16
+ }): react_jsx_runtime.JSX.Element;
17
+ declare function FieldRow({ children }: {
18
+ children: ReactNode;
19
+ }): react_jsx_runtime.JSX.Element;
20
+ declare function HelperText({ children }: {
21
+ children: ReactNode;
22
+ }): react_jsx_runtime.JSX.Element;
23
+
24
+ export { FieldRow, HelperText, SectionCard, SectionHeader };
@@ -0,0 +1,38 @@
1
+ "use client";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import { cn } from "../utils/cn.js";
4
+ function SectionCard({ children, className, id }) {
5
+ return /* @__PURE__ */ jsx("div", { id, className: cn("bg-card border border-border rounded-xl p-5 space-y-4", className), children });
6
+ }
7
+ function SectionHeader({
8
+ icon: Icon,
9
+ title,
10
+ description,
11
+ badge,
12
+ iconClass = "text-muted-foreground",
13
+ bgClass = "bg-muted"
14
+ }) {
15
+ return /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-3 pb-1", children: [
16
+ /* @__PURE__ */ jsx("div", { className: cn("h-8 w-8 rounded-lg flex items-center justify-center shrink-0 mt-0.5", bgClass), children: /* @__PURE__ */ jsx(Icon, { className: cn("h-4 w-4", iconClass) }) }),
17
+ /* @__PURE__ */ jsxs("div", { className: "flex-1 min-w-0", children: [
18
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 flex-wrap", children: [
19
+ /* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-foreground", children: title }),
20
+ badge
21
+ ] }),
22
+ description && /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-0.5 leading-relaxed", children: description })
23
+ ] })
24
+ ] });
25
+ }
26
+ function FieldRow({ children }) {
27
+ return /* @__PURE__ */ jsx("div", { className: "space-y-1.5", children });
28
+ }
29
+ function HelperText({ children }) {
30
+ return /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground leading-relaxed", children });
31
+ }
32
+ export {
33
+ FieldRow,
34
+ HelperText,
35
+ SectionCard,
36
+ SectionHeader
37
+ };
38
+ //# sourceMappingURL=settings-section.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/components/settings-section.tsx"],"sourcesContent":["\"use client\";\n\nimport type { ElementType, ReactNode } from \"react\";\nimport { cn } from \"../utils/cn.js\";\n\nexport function SectionCard({ children, className, id }: { children: ReactNode; className?: string; id?: string }) {\n return (\n <div id={id} className={cn(\"bg-card border border-border rounded-xl p-5 space-y-4\", className)}>\n {children}\n </div>\n );\n}\n\nexport function SectionHeader({\n icon: Icon,\n title,\n description,\n badge,\n iconClass = \"text-muted-foreground\",\n bgClass = \"bg-muted\",\n}: {\n icon: ElementType;\n title: string;\n description?: string;\n badge?: ReactNode;\n iconClass?: string;\n bgClass?: string;\n}) {\n return (\n <div className=\"flex items-start gap-3 pb-1\">\n <div className={cn(\"h-8 w-8 rounded-lg flex items-center justify-center shrink-0 mt-0.5\", bgClass)}>\n <Icon className={cn(\"h-4 w-4\", iconClass)} />\n </div>\n <div className=\"flex-1 min-w-0\">\n <div className=\"flex items-center gap-2 flex-wrap\">\n <h3 className=\"text-sm font-semibold text-foreground\">{title}</h3>\n {badge}\n </div>\n {description && <p className=\"text-xs text-muted-foreground mt-0.5 leading-relaxed\">{description}</p>}\n </div>\n </div>\n );\n}\n\nexport function FieldRow({ children }: { children: ReactNode }) {\n return <div className=\"space-y-1.5\">{children}</div>;\n}\n\nexport function HelperText({ children }: { children: ReactNode }) {\n return <p className=\"text-xs text-muted-foreground leading-relaxed\">{children}</p>;\n}\n"],"mappings":";AAOI,cA2BI,YA3BJ;AAJJ,SAAS,UAAU;AAEZ,SAAS,YAAY,EAAE,UAAU,WAAW,GAAG,GAA6D;AACjH,SACE,oBAAC,SAAI,IAAQ,WAAW,GAAG,yDAAyD,SAAS,GAC1F,UACH;AAEJ;AAEO,SAAS,cAAc;AAAA,EAC5B,MAAM;AAAA,EACN;AAAA,EACA;AAAA,EACA;AAAA,EACA,YAAY;AAAA,EACZ,UAAU;AACZ,GAOG;AACD,SACE,qBAAC,SAAI,WAAU,+BACb;AAAA,wBAAC,SAAI,WAAW,GAAG,uEAAuE,OAAO,GAC/F,8BAAC,QAAK,WAAW,GAAG,WAAW,SAAS,GAAG,GAC7C;AAAA,IACA,qBAAC,SAAI,WAAU,kBACb;AAAA,2BAAC,SAAI,WAAU,qCACb;AAAA,4BAAC,QAAG,WAAU,yCAAyC,iBAAM;AAAA,QAC5D;AAAA,SACH;AAAA,MACC,eAAe,oBAAC,OAAE,WAAU,wDAAwD,uBAAY;AAAA,OACnG;AAAA,KACF;AAEJ;AAEO,SAAS,SAAS,EAAE,SAAS,GAA4B;AAC9D,SAAO,oBAAC,SAAI,WAAU,eAAe,UAAS;AAChD;AAEO,SAAS,WAAW,EAAE,SAAS,GAA4B;AAChE,SAAO,oBAAC,OAAE,WAAU,iDAAiD,UAAS;AAChF;","names":[]}
package/dist/index.cjs CHANGED
@@ -25,6 +25,7 @@ __export(index_exports, {
25
25
  AccountSection: () => import_account_section.AccountSection,
26
26
  ActionButton: () => import_action_button.ActionButton,
27
27
  ActionDialog: () => import_action_dialog.ActionDialog,
28
+ ActiveFilters: () => import_marketplace_filters.ActiveFilters,
28
29
  ActivitiesFeed: () => import_activities_feed.ActivitiesFeed,
29
30
  ActivityCard: () => import_activity_card.ActivityCard,
30
31
  ActivityCardSkeleton: () => import_activity_card.ActivityCardSkeleton,
@@ -102,6 +103,7 @@ __export(index_exports, {
102
103
  CollectionNameClaim: () => import_collection_name_claim.CollectionNameClaim,
103
104
  CollectionPage: () => import_collection_page.CollectionPage,
104
105
  CollectionPicker: () => import_collection_picker.CollectionPicker,
106
+ CollectionSettings: () => import_collection_settings.CollectionSettings,
105
107
  CollectionTraitsTab: () => import_collection_traits_tab.CollectionTraitsTab,
106
108
  CollectionTypeChoices: () => import_new_collection_menu.CollectionTypeChoices,
107
109
  CollectionsPage: () => import_collections_page.CollectionsPage,
@@ -188,6 +190,8 @@ __export(index_exports, {
188
190
  FastMint: () => import_fast_mint.FastMint,
189
191
  FeaturedCarousel: () => import_featured_carousel.FeaturedCarousel,
190
192
  FeaturedCarouselSkeleton: () => import_featured_carousel.FeaturedCarouselSkeleton,
193
+ FiltersButton: () => import_marketplace_filters.FiltersButton,
194
+ FiltersDialog: () => import_marketplace_filters.FiltersDialog,
191
195
  FloatingCommentsButton: () => import_floating_comments_button.FloatingCommentsButton,
192
196
  Form: () => import_form.Form,
193
197
  FormControl: () => import_form.FormControl,
@@ -259,6 +263,7 @@ __export(index_exports, {
259
263
  MarketplaceDialogHero: () => import_marketplace_dialog_primitives.MarketplaceDialogHero,
260
264
  MarketplaceErrorState: () => import_marketplace_dialog_primitives.MarketplaceErrorState,
261
265
  MarketplaceProcessingState: () => import_marketplace_dialog_primitives.MarketplaceProcessingState,
266
+ MarketplaceSearch: () => import_marketplace_search.MarketplaceSearch,
262
267
  MarketplaceSignInGate: () => import_marketplace_dialog_primitives.MarketplaceSignInGate,
263
268
  MarketplaceTxLink: () => import_marketplace_dialog_primitives.MarketplaceTxLink,
264
269
  MediaWalletOverlay: () => import_media_wallet_overlay.MediaWalletOverlay,
@@ -327,6 +332,7 @@ __export(index_exports, {
327
332
  SPRING: () => import_motion_primitives.SPRING,
328
333
  ScoreSummaryCard: () => import_score_summary_card.ScoreSummaryCard,
329
334
  ScrollSection: () => import_scroll_section.ScrollSection,
335
+ SearchInput: () => import_marketplace_search.SearchInput,
330
336
  SearchPage: () => import_search_page.SearchPage,
331
337
  Section: () => import_create_form_primitives.Section,
332
338
  Select: () => import_select.Select,
@@ -506,6 +512,7 @@ __export(index_exports, {
506
512
  useCreatorByUsername: () => import_use_profiles.useCreatorByUsername,
507
513
  useCreatorProfile: () => import_use_profiles.useCreatorProfile,
508
514
  useCreators: () => import_use_creators.useCreators,
515
+ useDebouncedValue: () => import_use_debounced_value.useDebouncedValue,
509
516
  useDrop: () => import_use_drops.useDrop,
510
517
  useDropChain: () => import_use_drops.useDropChain,
511
518
  useDropFee: () => import_use_drops.useDropFee,
@@ -521,6 +528,7 @@ __export(index_exports, {
521
528
  useLaunchpadFilter: () => import_launchpad_services.useLaunchpadFilter,
522
529
  useLaunchpadImageUpload: () => import_use_launchpad_image_upload.useLaunchpadImageUpload,
523
530
  useLeaderboard: () => import_use_rewards.useLeaderboard,
531
+ useMarketplaceFilters: () => import_marketplace_filters.useMarketplaceFilters,
524
532
  useMediaWallet: () => import_media_wallet_overlay.useMediaWallet,
525
533
  useMedialaneApp: () => import_medialane_app.useMedialaneApp,
526
534
  useMedialaneClient: () => import_use_medialane_client.useMedialaneClient,
@@ -700,6 +708,7 @@ var import_portfolio_shell = require("./components/portfolio-shell.js");
700
708
  var import_rewards_dashboard = require("./components/rewards/rewards-dashboard.js");
701
709
  var import_leaderboard_panel = require("./components/rewards/leaderboard-panel.js");
702
710
  var import_collection_name_claim = require("./components/collection-name-claim.js");
711
+ var import_collection_settings = require("./components/collection-settings.js");
703
712
  var import_discover_page = require("./components/discover-page.js");
704
713
  var import_discover_community_section = require("./components/discover-community-section.js");
705
714
  var import_ip_type_nav = require("./components/ip-type-nav.js");
@@ -774,6 +783,9 @@ var import_transaction_dialog = require("./components/transaction-dialog.js");
774
783
  var import_transaction_success = require("./components/transaction-success.js");
775
784
  var import_transaction_dialog_states = require("./components/transaction-dialog-states.js");
776
785
  var import_transfer_dialog = require("./components/transfer-dialog.js");
786
+ var import_marketplace_search = require("./components/marketplace-search.js");
787
+ var import_marketplace_filters = require("./components/marketplace-filters.js");
788
+ var import_use_debounced_value = require("./utils/use-debounced-value.js");
777
789
  var import_success_messages = require("./utils/success-messages.js");
778
790
  var import_empty_messages = require("./utils/empty-messages.js");
779
791
  var import_medialane_collection_card = require("./components/medialane-collection-card.js");
@@ -866,6 +878,7 @@ var import_asset_accents = require("./utils/asset-accents.js");
866
878
  AccountSection,
867
879
  ActionButton,
868
880
  ActionDialog,
881
+ ActiveFilters,
869
882
  ActivitiesFeed,
870
883
  ActivityCard,
871
884
  ActivityCardSkeleton,
@@ -943,6 +956,7 @@ var import_asset_accents = require("./utils/asset-accents.js");
943
956
  CollectionNameClaim,
944
957
  CollectionPage,
945
958
  CollectionPicker,
959
+ CollectionSettings,
946
960
  CollectionTraitsTab,
947
961
  CollectionTypeChoices,
948
962
  CollectionsPage,
@@ -1029,6 +1043,8 @@ var import_asset_accents = require("./utils/asset-accents.js");
1029
1043
  FastMint,
1030
1044
  FeaturedCarousel,
1031
1045
  FeaturedCarouselSkeleton,
1046
+ FiltersButton,
1047
+ FiltersDialog,
1032
1048
  FloatingCommentsButton,
1033
1049
  Form,
1034
1050
  FormControl,
@@ -1100,6 +1116,7 @@ var import_asset_accents = require("./utils/asset-accents.js");
1100
1116
  MarketplaceDialogHero,
1101
1117
  MarketplaceErrorState,
1102
1118
  MarketplaceProcessingState,
1119
+ MarketplaceSearch,
1103
1120
  MarketplaceSignInGate,
1104
1121
  MarketplaceTxLink,
1105
1122
  MediaWalletOverlay,
@@ -1168,6 +1185,7 @@ var import_asset_accents = require("./utils/asset-accents.js");
1168
1185
  SPRING,
1169
1186
  ScoreSummaryCard,
1170
1187
  ScrollSection,
1188
+ SearchInput,
1171
1189
  SearchPage,
1172
1190
  Section,
1173
1191
  Select,
@@ -1347,6 +1365,7 @@ var import_asset_accents = require("./utils/asset-accents.js");
1347
1365
  useCreatorByUsername,
1348
1366
  useCreatorProfile,
1349
1367
  useCreators,
1368
+ useDebouncedValue,
1350
1369
  useDrop,
1351
1370
  useDropChain,
1352
1371
  useDropFee,
@@ -1362,6 +1381,7 @@ var import_asset_accents = require("./utils/asset-accents.js");
1362
1381
  useLaunchpadFilter,
1363
1382
  useLaunchpadImageUpload,
1364
1383
  useLeaderboard,
1384
+ useMarketplaceFilters,
1365
1385
  useMediaWallet,
1366
1386
  useMedialaneApp,
1367
1387
  useMedialaneClient,