@medialane/ui 0.128.6 → 0.128.7

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.
@@ -23,14 +23,15 @@ __export(medialane_collection_card_exports, {
23
23
  });
24
24
  module.exports = __toCommonJS(medialane_collection_card_exports);
25
25
  var import_jsx_runtime = require("react/jsx-runtime");
26
+ var import_lucide_react = require("lucide-react");
26
27
  var import_cn = require("../utils/cn.js");
27
- const FRAME_GRADIENT = "linear-gradient(135deg, #3b7bff, #8a5cf6 38%, #f6608f 70%, #fb8b46)";
28
28
  function MedialaneCollectionCard({
29
29
  image,
30
30
  name,
31
31
  collection,
32
32
  serial,
33
33
  creator,
34
+ creatorHref,
34
35
  className
35
36
  }) {
36
37
  const displayName = name?.trim() || "Untitled";
@@ -39,13 +40,7 @@ function MedialaneCollectionCard({
39
40
  {
40
41
  className: "ml-card-material relative rounded-[23px] overflow-hidden text-[#0a0e1f] dark:text-white",
41
42
  children: [
42
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "p-2.5 pb-0", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "relative aspect-[4/5] w-full overflow-hidden rounded-[16px] ring-1 ring-black/10 dark:ring-white/10", children: image ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("img", { src: image, alt: displayName, className: "h-full w-full object-cover" }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
43
- "div",
44
- {
45
- className: "h-full w-full",
46
- style: { background: FRAME_GRADIENT, opacity: 0.9 }
47
- }
48
- ) }) }),
43
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "p-2.5 pb-0", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "relative aspect-[4/5] w-full overflow-hidden rounded-[16px] ring-1 ring-black/10 dark:ring-white/10 bg-muted", children: image ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("img", { src: image, alt: displayName, className: "h-full w-full object-cover" }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "h-full w-full flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.ImageIcon, { className: "h-8 w-8 text-muted-foreground/40" }) }) }) }),
49
44
  /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "relative px-4 pt-3 pb-4", children: [
50
45
  /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-start gap-2", children: [
51
46
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "min-w-0 flex-1 text-[18px] font-bold leading-snug truncate", children: displayName }),
@@ -55,7 +50,16 @@ function MedialaneCollectionCard({
55
50
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "my-3 h-px bg-black/10 dark:bg-white/10" }),
56
51
  /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center gap-2", children: [
57
52
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "text-[9px] font-bold tracking-[0.18em] text-[#0a0e1f]/50 dark:text-white/50", children: "STARKNET" }),
58
- creator && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "ml-auto min-w-0 truncate text-2xs text-[#0a0e1f]/55 dark:text-white/55 tabular-nums", children: creator })
53
+ creator && (creatorHref ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
54
+ "a",
55
+ {
56
+ href: creatorHref,
57
+ target: "_blank",
58
+ rel: "noopener noreferrer",
59
+ className: "ml-auto min-w-0 truncate text-2xs text-[#0a0e1f]/55 dark:text-white/55 tabular-nums hover:text-[#0a0e1f]/80 dark:hover:text-white/80 transition-colors",
60
+ children: creator
61
+ }
62
+ ) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "ml-auto min-w-0 truncate text-2xs text-[#0a0e1f]/55 dark:text-white/55 tabular-nums", children: creator }))
59
63
  ] })
60
64
  ] })
61
65
  ]
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/components/medialane-collection-card.tsx"],"sourcesContent":["\"use client\";\n\nimport { cn } from \"../utils/cn.js\";\n\nexport interface MedialaneCollectionCardProps {\n\n image?: string | null;\n\n name?: string;\n\n collection?: string;\n\n serial?: string;\n\n creator?: string;\n className?: string;\n}\n\nconst FRAME_GRADIENT =\n \"linear-gradient(135deg, #3b7bff, #8a5cf6 38%, #f6608f 70%, #fb8b46)\";\n\nexport function MedialaneCollectionCard({\n image,\n name,\n collection,\n serial,\n creator,\n className,\n}: MedialaneCollectionCardProps) {\n const displayName = name?.trim() || \"Untitled\";\n\n return (\n <div className={cn(className)}>\n <div className=\"rounded-[24px] border border-border\">\n <div\n className=\"ml-card-material relative rounded-[23px] overflow-hidden text-[#0a0e1f] dark:text-white\"\n >\n\n <div className=\"p-2.5 pb-0\">\n <div className=\"relative aspect-[4/5] w-full overflow-hidden rounded-[16px] ring-1 ring-black/10 dark:ring-white/10\">\n {image ? (\n\n <img src={image} alt={displayName} className=\"h-full w-full object-cover\" />\n ) : (\n <div\n className=\"h-full w-full\"\n style={{ background: FRAME_GRADIENT, opacity: 0.9 }}\n />\n )}\n </div>\n </div>\n\n <div className=\"relative px-4 pt-3 pb-4\">\n <div className=\"flex items-start gap-2\">\n <p className=\"min-w-0 flex-1 text-[18px] font-bold leading-snug truncate\">\n {displayName}\n </p>\n {serial && (\n <span className=\"mt-0.5 shrink-0 rounded-full bg-black/5 dark:bg-white/10 px-2 py-0.5 text-2xs font-semibold text-[#0a0e1f]/80 dark:text-white/80 tabular-nums\">\n {serial}\n </span>\n )}\n </div>\n {collection && (\n <p className=\"mt-0.5 text-[12.5px] text-[#0a0e1f]/55 dark:text-white/55 truncate\">{collection}</p>\n )}\n <div className=\"my-3 h-px bg-black/10 dark:bg-white/10\" />\n <div className=\"flex items-center gap-2\">\n <span className=\"text-[9px] font-bold tracking-[0.18em] text-[#0a0e1f]/50 dark:text-white/50\">\n STARKNET\n </span>\n {creator && (\n <span className=\"ml-auto min-w-0 truncate text-2xs text-[#0a0e1f]/55 dark:text-white/55 tabular-nums\">\n {creator}\n </span>\n )}\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA0CgB;AAxChB,gBAAmB;AAgBnB,MAAM,iBACJ;AAEK,SAAS,wBAAwB;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAiC;AAC/B,QAAM,cAAc,MAAM,KAAK,KAAK;AAEpC,SACE,4CAAC,SAAI,eAAW,cAAG,SAAS,GAC1B,sDAAC,SAAI,WAAU,uCACb;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MAGV;AAAA,oDAAC,SAAI,WAAU,cACb,sDAAC,SAAI,WAAU,uGACZ,kBAEC,4CAAC,SAAI,KAAK,OAAO,KAAK,aAAa,WAAU,8BAA6B,IAE1E;AAAA,UAAC;AAAA;AAAA,YACC,WAAU;AAAA,YACV,OAAO,EAAE,YAAY,gBAAgB,SAAS,IAAI;AAAA;AAAA,QACpD,GAEJ,GACF;AAAA,QAEA,6CAAC,SAAI,WAAU,2BACb;AAAA,uDAAC,SAAI,WAAU,0BACb;AAAA,wDAAC,OAAE,WAAU,8DACV,uBACH;AAAA,YACC,UACC,4CAAC,UAAK,WAAU,iJACb,kBACH;AAAA,aAEJ;AAAA,UACC,cACC,4CAAC,OAAE,WAAU,sEAAsE,sBAAW;AAAA,UAEhG,4CAAC,SAAI,WAAU,0CAAyC;AAAA,UACxD,6CAAC,SAAI,WAAU,2BACb;AAAA,wDAAC,UAAK,WAAU,+EAA8E,sBAE9F;AAAA,YACC,WACC,4CAAC,UAAK,WAAU,uFACb,mBACH;AAAA,aAEJ;AAAA,WACF;AAAA;AAAA;AAAA,EACF,GACF,GACF;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../src/components/medialane-collection-card.tsx"],"sourcesContent":["\"use client\";\n\nimport { ImageIcon } from \"lucide-react\";\nimport { cn } from \"../utils/cn.js\";\n\nexport interface MedialaneCollectionCardProps {\n\n image?: string | null;\n\n name?: string;\n\n collection?: string;\n\n serial?: string;\n\n creator?: string;\n\n /** Explorer/profile URL for the creator address makes the footer address a link. */\n creatorHref?: string;\n className?: string;\n}\n\nexport function MedialaneCollectionCard({\n image,\n name,\n collection,\n serial,\n creator,\n creatorHref,\n className,\n}: MedialaneCollectionCardProps) {\n const displayName = name?.trim() || \"Untitled\";\n\n return (\n <div className={cn(className)}>\n <div className=\"rounded-[24px] border border-border\">\n <div\n className=\"ml-card-material relative rounded-[23px] overflow-hidden text-[#0a0e1f] dark:text-white\"\n >\n\n <div className=\"p-2.5 pb-0\">\n <div className=\"relative aspect-[4/5] w-full overflow-hidden rounded-[16px] ring-1 ring-black/10 dark:ring-white/10 bg-muted\">\n {image ? (\n\n <img src={image} alt={displayName} className=\"h-full w-full object-cover\" />\n ) : (\n <div className=\"h-full w-full flex items-center justify-center\">\n <ImageIcon className=\"h-8 w-8 text-muted-foreground/40\" />\n </div>\n )}\n </div>\n </div>\n\n <div className=\"relative px-4 pt-3 pb-4\">\n <div className=\"flex items-start gap-2\">\n <p className=\"min-w-0 flex-1 text-[18px] font-bold leading-snug truncate\">\n {displayName}\n </p>\n {serial && (\n <span className=\"mt-0.5 shrink-0 rounded-full bg-black/5 dark:bg-white/10 px-2 py-0.5 text-2xs font-semibold text-[#0a0e1f]/80 dark:text-white/80 tabular-nums\">\n {serial}\n </span>\n )}\n </div>\n {collection && (\n <p className=\"mt-0.5 text-[12.5px] text-[#0a0e1f]/55 dark:text-white/55 truncate\">{collection}</p>\n )}\n <div className=\"my-3 h-px bg-black/10 dark:bg-white/10\" />\n <div className=\"flex items-center gap-2\">\n <span className=\"text-[9px] font-bold tracking-[0.18em] text-[#0a0e1f]/50 dark:text-white/50\">\n STARKNET\n </span>\n {creator && (\n creatorHref ? (\n <a\n href={creatorHref}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className=\"ml-auto min-w-0 truncate text-2xs text-[#0a0e1f]/55 dark:text-white/55 tabular-nums hover:text-[#0a0e1f]/80 dark:hover:text-white/80 transition-colors\"\n >\n {creator}\n </a>\n ) : (\n <span className=\"ml-auto min-w-0 truncate text-2xs text-[#0a0e1f]/55 dark:text-white/55 tabular-nums\">\n {creator}\n </span>\n )\n )}\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA4CgB;AA1ChB,0BAA0B;AAC1B,gBAAmB;AAmBZ,SAAS,wBAAwB;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAiC;AAC/B,QAAM,cAAc,MAAM,KAAK,KAAK;AAEpC,SACE,4CAAC,SAAI,eAAW,cAAG,SAAS,GAC1B,sDAAC,SAAI,WAAU,uCACb;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MAGV;AAAA,oDAAC,SAAI,WAAU,cACb,sDAAC,SAAI,WAAU,gHACZ,kBAEC,4CAAC,SAAI,KAAK,OAAO,KAAK,aAAa,WAAU,8BAA6B,IAE1E,4CAAC,SAAI,WAAU,kDACb,sDAAC,iCAAU,WAAU,oCAAmC,GAC1D,GAEJ,GACF;AAAA,QAEA,6CAAC,SAAI,WAAU,2BACb;AAAA,uDAAC,SAAI,WAAU,0BACb;AAAA,wDAAC,OAAE,WAAU,8DACV,uBACH;AAAA,YACC,UACC,4CAAC,UAAK,WAAU,iJACb,kBACH;AAAA,aAEJ;AAAA,UACC,cACC,4CAAC,OAAE,WAAU,sEAAsE,sBAAW;AAAA,UAEhG,4CAAC,SAAI,WAAU,0CAAyC;AAAA,UACxD,6CAAC,SAAI,WAAU,2BACb;AAAA,wDAAC,UAAK,WAAU,+EAA8E,sBAE9F;AAAA,YACC,YACC,cACE;AAAA,cAAC;AAAA;AAAA,gBACC,MAAM;AAAA,gBACN,QAAO;AAAA,gBACP,KAAI;AAAA,gBACJ,WAAU;AAAA,gBAET;AAAA;AAAA,YACH,IAEA,4CAAC,UAAK,WAAU,uFACb,mBACH;AAAA,aAGN;AAAA,WACF;AAAA;AAAA;AAAA,EACF,GACF,GACF;AAEJ;","names":[]}
@@ -6,8 +6,10 @@ interface MedialaneCollectionCardProps {
6
6
  collection?: string;
7
7
  serial?: string;
8
8
  creator?: string;
9
+ /** Explorer/profile URL for the creator address — makes the footer address a link. */
10
+ creatorHref?: string;
9
11
  className?: string;
10
12
  }
11
- declare function MedialaneCollectionCard({ image, name, collection, serial, creator, className, }: MedialaneCollectionCardProps): react_jsx_runtime.JSX.Element;
13
+ declare function MedialaneCollectionCard({ image, name, collection, serial, creator, creatorHref, className, }: MedialaneCollectionCardProps): react_jsx_runtime.JSX.Element;
12
14
 
13
15
  export { MedialaneCollectionCard, type MedialaneCollectionCardProps };
@@ -6,8 +6,10 @@ interface MedialaneCollectionCardProps {
6
6
  collection?: string;
7
7
  serial?: string;
8
8
  creator?: string;
9
+ /** Explorer/profile URL for the creator address — makes the footer address a link. */
10
+ creatorHref?: string;
9
11
  className?: string;
10
12
  }
11
- declare function MedialaneCollectionCard({ image, name, collection, serial, creator, className, }: MedialaneCollectionCardProps): react_jsx_runtime.JSX.Element;
13
+ declare function MedialaneCollectionCard({ image, name, collection, serial, creator, creatorHref, className, }: MedialaneCollectionCardProps): react_jsx_runtime.JSX.Element;
12
14
 
13
15
  export { MedialaneCollectionCard, type MedialaneCollectionCardProps };
@@ -1,13 +1,14 @@
1
1
  "use client";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
+ import { ImageIcon } from "lucide-react";
3
4
  import { cn } from "../utils/cn.js";
4
- const FRAME_GRADIENT = "linear-gradient(135deg, #3b7bff, #8a5cf6 38%, #f6608f 70%, #fb8b46)";
5
5
  function MedialaneCollectionCard({
6
6
  image,
7
7
  name,
8
8
  collection,
9
9
  serial,
10
10
  creator,
11
+ creatorHref,
11
12
  className
12
13
  }) {
13
14
  const displayName = name?.trim() || "Untitled";
@@ -16,13 +17,7 @@ function MedialaneCollectionCard({
16
17
  {
17
18
  className: "ml-card-material relative rounded-[23px] overflow-hidden text-[#0a0e1f] dark:text-white",
18
19
  children: [
19
- /* @__PURE__ */ jsx("div", { className: "p-2.5 pb-0", children: /* @__PURE__ */ jsx("div", { className: "relative aspect-[4/5] w-full overflow-hidden rounded-[16px] ring-1 ring-black/10 dark:ring-white/10", children: image ? /* @__PURE__ */ jsx("img", { src: image, alt: displayName, className: "h-full w-full object-cover" }) : /* @__PURE__ */ jsx(
20
- "div",
21
- {
22
- className: "h-full w-full",
23
- style: { background: FRAME_GRADIENT, opacity: 0.9 }
24
- }
25
- ) }) }),
20
+ /* @__PURE__ */ jsx("div", { className: "p-2.5 pb-0", children: /* @__PURE__ */ jsx("div", { className: "relative aspect-[4/5] w-full overflow-hidden rounded-[16px] ring-1 ring-black/10 dark:ring-white/10 bg-muted", children: image ? /* @__PURE__ */ jsx("img", { src: image, alt: displayName, className: "h-full w-full object-cover" }) : /* @__PURE__ */ jsx("div", { className: "h-full w-full flex items-center justify-center", children: /* @__PURE__ */ jsx(ImageIcon, { className: "h-8 w-8 text-muted-foreground/40" }) }) }) }),
26
21
  /* @__PURE__ */ jsxs("div", { className: "relative px-4 pt-3 pb-4", children: [
27
22
  /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-2", children: [
28
23
  /* @__PURE__ */ jsx("p", { className: "min-w-0 flex-1 text-[18px] font-bold leading-snug truncate", children: displayName }),
@@ -32,7 +27,16 @@ function MedialaneCollectionCard({
32
27
  /* @__PURE__ */ jsx("div", { className: "my-3 h-px bg-black/10 dark:bg-white/10" }),
33
28
  /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
34
29
  /* @__PURE__ */ jsx("span", { className: "text-[9px] font-bold tracking-[0.18em] text-[#0a0e1f]/50 dark:text-white/50", children: "STARKNET" }),
35
- creator && /* @__PURE__ */ jsx("span", { className: "ml-auto min-w-0 truncate text-2xs text-[#0a0e1f]/55 dark:text-white/55 tabular-nums", children: creator })
30
+ creator && (creatorHref ? /* @__PURE__ */ jsx(
31
+ "a",
32
+ {
33
+ href: creatorHref,
34
+ target: "_blank",
35
+ rel: "noopener noreferrer",
36
+ className: "ml-auto min-w-0 truncate text-2xs text-[#0a0e1f]/55 dark:text-white/55 tabular-nums hover:text-[#0a0e1f]/80 dark:hover:text-white/80 transition-colors",
37
+ children: creator
38
+ }
39
+ ) : /* @__PURE__ */ jsx("span", { className: "ml-auto min-w-0 truncate text-2xs text-[#0a0e1f]/55 dark:text-white/55 tabular-nums", children: creator }))
36
40
  ] })
37
41
  ] })
38
42
  ]
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/components/medialane-collection-card.tsx"],"sourcesContent":["\"use client\";\n\nimport { cn } from \"../utils/cn.js\";\n\nexport interface MedialaneCollectionCardProps {\n\n image?: string | null;\n\n name?: string;\n\n collection?: string;\n\n serial?: string;\n\n creator?: string;\n className?: string;\n}\n\nconst FRAME_GRADIENT =\n \"linear-gradient(135deg, #3b7bff, #8a5cf6 38%, #f6608f 70%, #fb8b46)\";\n\nexport function MedialaneCollectionCard({\n image,\n name,\n collection,\n serial,\n creator,\n className,\n}: MedialaneCollectionCardProps) {\n const displayName = name?.trim() || \"Untitled\";\n\n return (\n <div className={cn(className)}>\n <div className=\"rounded-[24px] border border-border\">\n <div\n className=\"ml-card-material relative rounded-[23px] overflow-hidden text-[#0a0e1f] dark:text-white\"\n >\n\n <div className=\"p-2.5 pb-0\">\n <div className=\"relative aspect-[4/5] w-full overflow-hidden rounded-[16px] ring-1 ring-black/10 dark:ring-white/10\">\n {image ? (\n\n <img src={image} alt={displayName} className=\"h-full w-full object-cover\" />\n ) : (\n <div\n className=\"h-full w-full\"\n style={{ background: FRAME_GRADIENT, opacity: 0.9 }}\n />\n )}\n </div>\n </div>\n\n <div className=\"relative px-4 pt-3 pb-4\">\n <div className=\"flex items-start gap-2\">\n <p className=\"min-w-0 flex-1 text-[18px] font-bold leading-snug truncate\">\n {displayName}\n </p>\n {serial && (\n <span className=\"mt-0.5 shrink-0 rounded-full bg-black/5 dark:bg-white/10 px-2 py-0.5 text-2xs font-semibold text-[#0a0e1f]/80 dark:text-white/80 tabular-nums\">\n {serial}\n </span>\n )}\n </div>\n {collection && (\n <p className=\"mt-0.5 text-[12.5px] text-[#0a0e1f]/55 dark:text-white/55 truncate\">{collection}</p>\n )}\n <div className=\"my-3 h-px bg-black/10 dark:bg-white/10\" />\n <div className=\"flex items-center gap-2\">\n <span className=\"text-[9px] font-bold tracking-[0.18em] text-[#0a0e1f]/50 dark:text-white/50\">\n STARKNET\n </span>\n {creator && (\n <span className=\"ml-auto min-w-0 truncate text-2xs text-[#0a0e1f]/55 dark:text-white/55 tabular-nums\">\n {creator}\n </span>\n )}\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n}\n"],"mappings":";AA0CgB,cAWJ,YAXI;AAxChB,SAAS,UAAU;AAgBnB,MAAM,iBACJ;AAEK,SAAS,wBAAwB;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAiC;AAC/B,QAAM,cAAc,MAAM,KAAK,KAAK;AAEpC,SACE,oBAAC,SAAI,WAAW,GAAG,SAAS,GAC1B,8BAAC,SAAI,WAAU,uCACb;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MAGV;AAAA,4BAAC,SAAI,WAAU,cACb,8BAAC,SAAI,WAAU,uGACZ,kBAEC,oBAAC,SAAI,KAAK,OAAO,KAAK,aAAa,WAAU,8BAA6B,IAE1E;AAAA,UAAC;AAAA;AAAA,YACC,WAAU;AAAA,YACV,OAAO,EAAE,YAAY,gBAAgB,SAAS,IAAI;AAAA;AAAA,QACpD,GAEJ,GACF;AAAA,QAEA,qBAAC,SAAI,WAAU,2BACb;AAAA,+BAAC,SAAI,WAAU,0BACb;AAAA,gCAAC,OAAE,WAAU,8DACV,uBACH;AAAA,YACC,UACC,oBAAC,UAAK,WAAU,iJACb,kBACH;AAAA,aAEJ;AAAA,UACC,cACC,oBAAC,OAAE,WAAU,sEAAsE,sBAAW;AAAA,UAEhG,oBAAC,SAAI,WAAU,0CAAyC;AAAA,UACxD,qBAAC,SAAI,WAAU,2BACb;AAAA,gCAAC,UAAK,WAAU,+EAA8E,sBAE9F;AAAA,YACC,WACC,oBAAC,UAAK,WAAU,uFACb,mBACH;AAAA,aAEJ;AAAA,WACF;AAAA;AAAA;AAAA,EACF,GACF,GACF;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../src/components/medialane-collection-card.tsx"],"sourcesContent":["\"use client\";\n\nimport { ImageIcon } from \"lucide-react\";\nimport { cn } from \"../utils/cn.js\";\n\nexport interface MedialaneCollectionCardProps {\n\n image?: string | null;\n\n name?: string;\n\n collection?: string;\n\n serial?: string;\n\n creator?: string;\n\n /** Explorer/profile URL for the creator address makes the footer address a link. */\n creatorHref?: string;\n className?: string;\n}\n\nexport function MedialaneCollectionCard({\n image,\n name,\n collection,\n serial,\n creator,\n creatorHref,\n className,\n}: MedialaneCollectionCardProps) {\n const displayName = name?.trim() || \"Untitled\";\n\n return (\n <div className={cn(className)}>\n <div className=\"rounded-[24px] border border-border\">\n <div\n className=\"ml-card-material relative rounded-[23px] overflow-hidden text-[#0a0e1f] dark:text-white\"\n >\n\n <div className=\"p-2.5 pb-0\">\n <div className=\"relative aspect-[4/5] w-full overflow-hidden rounded-[16px] ring-1 ring-black/10 dark:ring-white/10 bg-muted\">\n {image ? (\n\n <img src={image} alt={displayName} className=\"h-full w-full object-cover\" />\n ) : (\n <div className=\"h-full w-full flex items-center justify-center\">\n <ImageIcon className=\"h-8 w-8 text-muted-foreground/40\" />\n </div>\n )}\n </div>\n </div>\n\n <div className=\"relative px-4 pt-3 pb-4\">\n <div className=\"flex items-start gap-2\">\n <p className=\"min-w-0 flex-1 text-[18px] font-bold leading-snug truncate\">\n {displayName}\n </p>\n {serial && (\n <span className=\"mt-0.5 shrink-0 rounded-full bg-black/5 dark:bg-white/10 px-2 py-0.5 text-2xs font-semibold text-[#0a0e1f]/80 dark:text-white/80 tabular-nums\">\n {serial}\n </span>\n )}\n </div>\n {collection && (\n <p className=\"mt-0.5 text-[12.5px] text-[#0a0e1f]/55 dark:text-white/55 truncate\">{collection}</p>\n )}\n <div className=\"my-3 h-px bg-black/10 dark:bg-white/10\" />\n <div className=\"flex items-center gap-2\">\n <span className=\"text-[9px] font-bold tracking-[0.18em] text-[#0a0e1f]/50 dark:text-white/50\">\n STARKNET\n </span>\n {creator && (\n creatorHref ? (\n <a\n href={creatorHref}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className=\"ml-auto min-w-0 truncate text-2xs text-[#0a0e1f]/55 dark:text-white/55 tabular-nums hover:text-[#0a0e1f]/80 dark:hover:text-white/80 transition-colors\"\n >\n {creator}\n </a>\n ) : (\n <span className=\"ml-auto min-w-0 truncate text-2xs text-[#0a0e1f]/55 dark:text-white/55 tabular-nums\">\n {creator}\n </span>\n )\n )}\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n}\n"],"mappings":";AA4CgB,cAUJ,YAVI;AA1ChB,SAAS,iBAAiB;AAC1B,SAAS,UAAU;AAmBZ,SAAS,wBAAwB;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAiC;AAC/B,QAAM,cAAc,MAAM,KAAK,KAAK;AAEpC,SACE,oBAAC,SAAI,WAAW,GAAG,SAAS,GAC1B,8BAAC,SAAI,WAAU,uCACb;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MAGV;AAAA,4BAAC,SAAI,WAAU,cACb,8BAAC,SAAI,WAAU,gHACZ,kBAEC,oBAAC,SAAI,KAAK,OAAO,KAAK,aAAa,WAAU,8BAA6B,IAE1E,oBAAC,SAAI,WAAU,kDACb,8BAAC,aAAU,WAAU,oCAAmC,GAC1D,GAEJ,GACF;AAAA,QAEA,qBAAC,SAAI,WAAU,2BACb;AAAA,+BAAC,SAAI,WAAU,0BACb;AAAA,gCAAC,OAAE,WAAU,8DACV,uBACH;AAAA,YACC,UACC,oBAAC,UAAK,WAAU,iJACb,kBACH;AAAA,aAEJ;AAAA,UACC,cACC,oBAAC,OAAE,WAAU,sEAAsE,sBAAW;AAAA,UAEhG,oBAAC,SAAI,WAAU,0CAAyC;AAAA,UACxD,qBAAC,SAAI,WAAU,2BACb;AAAA,gCAAC,UAAK,WAAU,+EAA8E,sBAE9F;AAAA,YACC,YACC,cACE;AAAA,cAAC;AAAA;AAAA,gBACC,MAAM;AAAA,gBACN,QAAO;AAAA,gBACP,KAAI;AAAA,gBACJ,WAAU;AAAA,gBAET;AAAA;AAAA,YACH,IAEA,oBAAC,UAAK,WAAU,uFACb,mBACH;AAAA,aAGN;AAAA,WACF;AAAA;AAAA;AAAA,EACF,GACF,GACF;AAEJ;","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@medialane/ui",
3
- "version": "0.128.6",
3
+ "version": "0.128.7",
4
4
  "description": "Shared UI components for Medialane apps",
5
5
  "type": "module",
6
6
  "sideEffects": false,