@medialane/ui 0.329.0 → 0.331.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.
@@ -1,7 +1,7 @@
1
1
  import * as input_otp from 'input-otp';
2
2
  import * as React from 'react';
3
3
 
4
- declare const InputOTP: React.ForwardRefExoticComponent<(Omit<Omit<React.InputHTMLAttributes<HTMLInputElement>, "value" | "onChange" | "maxLength" | "textAlign" | "onComplete" | "pushPasswordManagerStrategy" | "pasteTransformer" | "containerClassName" | "noScriptCSSFallback"> & {
4
+ declare const InputOTP: React.ForwardRefExoticComponent<(Omit<Omit<React.InputHTMLAttributes<HTMLInputElement>, "onChange" | "value" | "maxLength" | "textAlign" | "onComplete" | "pushPasswordManagerStrategy" | "pasteTransformer" | "containerClassName" | "noScriptCSSFallback"> & {
5
5
  value?: string;
6
6
  onChange?: (newValue: string) => unknown;
7
7
  maxLength: number;
@@ -14,7 +14,7 @@ declare const InputOTP: React.ForwardRefExoticComponent<(Omit<Omit<React.InputHT
14
14
  } & {
15
15
  render: (props: input_otp.RenderProps) => React.ReactNode;
16
16
  children?: never;
17
- } & React.RefAttributes<HTMLInputElement>, "ref"> | Omit<Omit<React.InputHTMLAttributes<HTMLInputElement>, "value" | "onChange" | "maxLength" | "textAlign" | "onComplete" | "pushPasswordManagerStrategy" | "pasteTransformer" | "containerClassName" | "noScriptCSSFallback"> & {
17
+ } & React.RefAttributes<HTMLInputElement>, "ref"> | Omit<Omit<React.InputHTMLAttributes<HTMLInputElement>, "onChange" | "value" | "maxLength" | "textAlign" | "onComplete" | "pushPasswordManagerStrategy" | "pasteTransformer" | "containerClassName" | "noScriptCSSFallback"> & {
18
18
  value?: string;
19
19
  onChange?: (newValue: string) => unknown;
20
20
  maxLength: number;
@@ -1,7 +1,7 @@
1
1
  import * as input_otp from 'input-otp';
2
2
  import * as React from 'react';
3
3
 
4
- declare const InputOTP: React.ForwardRefExoticComponent<(Omit<Omit<React.InputHTMLAttributes<HTMLInputElement>, "value" | "onChange" | "maxLength" | "textAlign" | "onComplete" | "pushPasswordManagerStrategy" | "pasteTransformer" | "containerClassName" | "noScriptCSSFallback"> & {
4
+ declare const InputOTP: React.ForwardRefExoticComponent<(Omit<Omit<React.InputHTMLAttributes<HTMLInputElement>, "onChange" | "value" | "maxLength" | "textAlign" | "onComplete" | "pushPasswordManagerStrategy" | "pasteTransformer" | "containerClassName" | "noScriptCSSFallback"> & {
5
5
  value?: string;
6
6
  onChange?: (newValue: string) => unknown;
7
7
  maxLength: number;
@@ -14,7 +14,7 @@ declare const InputOTP: React.ForwardRefExoticComponent<(Omit<Omit<React.InputHT
14
14
  } & {
15
15
  render: (props: input_otp.RenderProps) => React.ReactNode;
16
16
  children?: never;
17
- } & React.RefAttributes<HTMLInputElement>, "ref"> | Omit<Omit<React.InputHTMLAttributes<HTMLInputElement>, "value" | "onChange" | "maxLength" | "textAlign" | "onComplete" | "pushPasswordManagerStrategy" | "pasteTransformer" | "containerClassName" | "noScriptCSSFallback"> & {
17
+ } & React.RefAttributes<HTMLInputElement>, "ref"> | Omit<Omit<React.InputHTMLAttributes<HTMLInputElement>, "onChange" | "value" | "maxLength" | "textAlign" | "onComplete" | "pushPasswordManagerStrategy" | "pasteTransformer" | "containerClassName" | "noScriptCSSFallback"> & {
18
18
  value?: string;
19
19
  onChange?: (newValue: string) => unknown;
20
20
  maxLength: number;
@@ -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?: "ghost" | "link" | "default" | "destructive" | "outline" | "secondary" | "premium" | "tonal" | "gradient-border" | "gradient-fill" | null | undefined;
7
- size?: "icon" | "default" | "sm" | "lg" | null | undefined;
6
+ variant?: "default" | "link" | "destructive" | "outline" | "secondary" | "ghost" | "premium" | "tonal" | "gradient-border" | "gradient-fill" | null | undefined;
7
+ size?: "default" | "icon" | "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?: "ghost" | "link" | "default" | "destructive" | "outline" | "secondary" | "premium" | "tonal" | "gradient-border" | "gradient-fill" | null | undefined;
7
- size?: "icon" | "default" | "sm" | "lg" | null | undefined;
6
+ variant?: "default" | "link" | "destructive" | "outline" | "secondary" | "ghost" | "premium" | "tonal" | "gradient-border" | "gradient-fill" | null | undefined;
7
+ size?: "default" | "icon" | "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;
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var discover_features_exports = {};
20
+ __export(discover_features_exports, {
21
+ DiscoverFeatures: () => DiscoverFeatures
22
+ });
23
+ module.exports = __toCommonJS(discover_features_exports);
24
+ var import_jsx_runtime = require("react/jsx-runtime");
25
+ var import_lucide_react = require("lucide-react");
26
+ var import_cn = require("../utils/cn.js");
27
+ const HUES = [
28
+ { text: "text-brand-blue", border: "border-brand-blue/30", tint: "bg-brand-blue/10" },
29
+ { text: "text-brand-maeve", border: "border-brand-maeve/30", tint: "bg-brand-maeve/10" },
30
+ { text: "text-brand-orange", border: "border-brand-orange/30", tint: "bg-brand-orange/10" },
31
+ { text: "text-brand-purple", border: "border-brand-purple/30", tint: "bg-brand-purple/10" },
32
+ { text: "text-brand-rose", border: "border-brand-rose/30", tint: "bg-brand-rose/10" }
33
+ ];
34
+ const FEATURES = [
35
+ { icon: import_lucide_react.HandCoins, title: "99% to creators and owners" },
36
+ { icon: import_lucide_react.Globe, title: "Censorship resistance" },
37
+ { icon: import_lucide_react.ShieldCheck, title: "Stark cryptography" },
38
+ { icon: import_lucide_react.EyeOff, title: "Privacy by design" },
39
+ { icon: import_lucide_react.ScanEye, title: "Zero knowledge proof with Starknet" },
40
+ { icon: import_lucide_react.Percent, title: "Zero fees on protocols" },
41
+ { icon: import_lucide_react.Lock, title: "Immutable smart contracts" },
42
+ { icon: import_lucide_react.DoorOpen, title: "Permissionless" },
43
+ { icon: import_lucide_react.Database, title: "Smart contracts are the source of truth" },
44
+ { icon: import_lucide_react.FileCog, title: "Programmable IP" },
45
+ { icon: import_lucide_react.Gem, title: "Immutable assets" },
46
+ { icon: import_lucide_react.Scale, title: "IP protection compliance" },
47
+ { icon: import_lucide_react.Code, title: "Open source and auditable" }
48
+ ];
49
+ function DiscoverFeatures() {
50
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("section", { className: "w-full overflow-x-auto scrollbar-hide", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("ul", { className: "flex snap-x snap-mandatory gap-5 pb-2 sm:gap-6", style: { width: "max-content" }, children: FEATURES.map(({ icon: Icon, title }, i) => {
51
+ const hue = HUES[i % HUES.length];
52
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
53
+ "li",
54
+ {
55
+ className: (0, import_cn.cn)(
56
+ "flex min-h-[168px] w-56 shrink-0 snap-start flex-col gap-4 rounded-2xl border bg-card p-6 sm:w-64",
57
+ hue.border
58
+ ),
59
+ children: [
60
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: (0, import_cn.cn)("flex h-11 w-11 items-center justify-center rounded-xl", hue.tint), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Icon, { className: (0, import_cn.cn)("h-6 w-6", hue.text) }) }),
61
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h3", { className: "text-lg font-black leading-snug tracking-tight", children: title })
62
+ ]
63
+ },
64
+ title
65
+ );
66
+ }) }) });
67
+ }
68
+ // Annotate the CommonJS export names for ESM import in node:
69
+ 0 && (module.exports = {
70
+ DiscoverFeatures
71
+ });
72
+ //# sourceMappingURL=discover-features.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/components/discover-features.tsx"],"sourcesContent":["import {\n Code,\n Database,\n DoorOpen,\n EyeOff,\n FileCog,\n Gem,\n Globe,\n HandCoins,\n Lock,\n Percent,\n ScanEye,\n Scale,\n ShieldCheck,\n type LucideIcon,\n} from \"lucide-react\";\nimport { cn } from \"../utils/cn.js\";\n\nconst HUES = [\n { text: \"text-brand-blue\", border: \"border-brand-blue/30\", tint: \"bg-brand-blue/10\" },\n { text: \"text-brand-maeve\", border: \"border-brand-maeve/30\", tint: \"bg-brand-maeve/10\" },\n { text: \"text-brand-orange\", border: \"border-brand-orange/30\", tint: \"bg-brand-orange/10\" },\n { text: \"text-brand-purple\", border: \"border-brand-purple/30\", tint: \"bg-brand-purple/10\" },\n { text: \"text-brand-rose\", border: \"border-brand-rose/30\", tint: \"bg-brand-rose/10\" },\n];\n\nconst FEATURES: ReadonlyArray<{ icon: LucideIcon; title: string }> = [\n { icon: HandCoins, title: \"99% to creators and owners\" },\n { icon: Globe, title: \"Censorship resistance\" },\n { icon: ShieldCheck, title: \"Stark cryptography\" },\n { icon: EyeOff, title: \"Privacy by design\" },\n { icon: ScanEye, title: \"Zero knowledge proof with Starknet\" },\n { icon: Percent, title: \"Zero fees on protocols\" },\n { icon: Lock, title: \"Immutable smart contracts\" },\n { icon: DoorOpen, title: \"Permissionless\" },\n { icon: Database, title: \"Smart contracts are the source of truth\" },\n { icon: FileCog, title: \"Programmable IP\" },\n { icon: Gem, title: \"Immutable assets\" },\n { icon: Scale, title: \"IP protection compliance\" },\n { icon: Code, title: \"Open source and auditable\" },\n];\n\nexport function DiscoverFeatures() {\n return (\n <section className=\"w-full overflow-x-auto scrollbar-hide\">\n <ul className=\"flex snap-x snap-mandatory gap-5 pb-2 sm:gap-6\" style={{ width: \"max-content\" }}>\n {FEATURES.map(({ icon: Icon, title }, i) => {\n const hue = HUES[i % HUES.length]!;\n return (\n <li\n key={title}\n className={cn(\n \"flex min-h-[168px] w-56 shrink-0 snap-start flex-col gap-4 rounded-2xl border bg-card p-6 sm:w-64\",\n hue.border,\n )}\n >\n <span className={cn(\"flex h-11 w-11 items-center justify-center rounded-xl\", hue.tint)}>\n <Icon className={cn(\"h-6 w-6\", hue.text)} />\n </span>\n <h3 className=\"text-lg font-black leading-snug tracking-tight\">{title}</h3>\n </li>\n );\n })}\n </ul>\n </section>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAiDY;AAjDZ,0BAeO;AACP,gBAAmB;AAEnB,MAAM,OAAO;AAAA,EACX,EAAE,MAAM,mBAAmB,QAAQ,wBAAwB,MAAM,mBAAmB;AAAA,EACpF,EAAE,MAAM,oBAAoB,QAAQ,yBAAyB,MAAM,oBAAoB;AAAA,EACvF,EAAE,MAAM,qBAAqB,QAAQ,0BAA0B,MAAM,qBAAqB;AAAA,EAC1F,EAAE,MAAM,qBAAqB,QAAQ,0BAA0B,MAAM,qBAAqB;AAAA,EAC1F,EAAE,MAAM,mBAAmB,QAAQ,wBAAwB,MAAM,mBAAmB;AACtF;AAEA,MAAM,WAA+D;AAAA,EACnE,EAAE,MAAM,+BAAW,OAAO,6BAA6B;AAAA,EACvD,EAAE,MAAM,2BAAO,OAAO,wBAAwB;AAAA,EAC9C,EAAE,MAAM,iCAAa,OAAO,qBAAqB;AAAA,EACjD,EAAE,MAAM,4BAAQ,OAAO,oBAAoB;AAAA,EAC3C,EAAE,MAAM,6BAAS,OAAO,qCAAqC;AAAA,EAC7D,EAAE,MAAM,6BAAS,OAAO,yBAAyB;AAAA,EACjD,EAAE,MAAM,0BAAM,OAAO,4BAA4B;AAAA,EACjD,EAAE,MAAM,8BAAU,OAAO,iBAAiB;AAAA,EAC1C,EAAE,MAAM,8BAAU,OAAO,0CAA0C;AAAA,EACnE,EAAE,MAAM,6BAAS,OAAO,kBAAkB;AAAA,EAC1C,EAAE,MAAM,yBAAK,OAAO,mBAAmB;AAAA,EACvC,EAAE,MAAM,2BAAO,OAAO,2BAA2B;AAAA,EACjD,EAAE,MAAM,0BAAM,OAAO,4BAA4B;AACnD;AAEO,SAAS,mBAAmB;AACjC,SACE,4CAAC,aAAQ,WAAU,yCACjB,sDAAC,QAAG,WAAU,kDAAiD,OAAO,EAAE,OAAO,cAAc,GAC1F,mBAAS,IAAI,CAAC,EAAE,MAAM,MAAM,MAAM,GAAG,MAAM;AAC1C,UAAM,MAAM,KAAK,IAAI,KAAK,MAAM;AAChC,WACE;AAAA,MAAC;AAAA;AAAA,QAEC,eAAW;AAAA,UACT;AAAA,UACA,IAAI;AAAA,QACN;AAAA,QAEA;AAAA,sDAAC,UAAK,eAAW,cAAG,yDAAyD,IAAI,IAAI,GACnF,sDAAC,QAAK,eAAW,cAAG,WAAW,IAAI,IAAI,GAAG,GAC5C;AAAA,UACA,4CAAC,QAAG,WAAU,kDAAkD,iBAAM;AAAA;AAAA;AAAA,MATjE;AAAA,IAUP;AAAA,EAEJ,CAAC,GACH,GACF;AAEJ;","names":[]}
@@ -0,0 +1,5 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+
3
+ declare function DiscoverFeatures(): react_jsx_runtime.JSX.Element;
4
+
5
+ export { DiscoverFeatures };
@@ -0,0 +1,5 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+
3
+ declare function DiscoverFeatures(): react_jsx_runtime.JSX.Element;
4
+
5
+ export { DiscoverFeatures };
@@ -0,0 +1,62 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import {
3
+ Code,
4
+ Database,
5
+ DoorOpen,
6
+ EyeOff,
7
+ FileCog,
8
+ Gem,
9
+ Globe,
10
+ HandCoins,
11
+ Lock,
12
+ Percent,
13
+ ScanEye,
14
+ Scale,
15
+ ShieldCheck
16
+ } from "lucide-react";
17
+ import { cn } from "../utils/cn.js";
18
+ const HUES = [
19
+ { text: "text-brand-blue", border: "border-brand-blue/30", tint: "bg-brand-blue/10" },
20
+ { text: "text-brand-maeve", border: "border-brand-maeve/30", tint: "bg-brand-maeve/10" },
21
+ { text: "text-brand-orange", border: "border-brand-orange/30", tint: "bg-brand-orange/10" },
22
+ { text: "text-brand-purple", border: "border-brand-purple/30", tint: "bg-brand-purple/10" },
23
+ { text: "text-brand-rose", border: "border-brand-rose/30", tint: "bg-brand-rose/10" }
24
+ ];
25
+ const FEATURES = [
26
+ { icon: HandCoins, title: "99% to creators and owners" },
27
+ { icon: Globe, title: "Censorship resistance" },
28
+ { icon: ShieldCheck, title: "Stark cryptography" },
29
+ { icon: EyeOff, title: "Privacy by design" },
30
+ { icon: ScanEye, title: "Zero knowledge proof with Starknet" },
31
+ { icon: Percent, title: "Zero fees on protocols" },
32
+ { icon: Lock, title: "Immutable smart contracts" },
33
+ { icon: DoorOpen, title: "Permissionless" },
34
+ { icon: Database, title: "Smart contracts are the source of truth" },
35
+ { icon: FileCog, title: "Programmable IP" },
36
+ { icon: Gem, title: "Immutable assets" },
37
+ { icon: Scale, title: "IP protection compliance" },
38
+ { icon: Code, title: "Open source and auditable" }
39
+ ];
40
+ function DiscoverFeatures() {
41
+ return /* @__PURE__ */ jsx("section", { className: "w-full overflow-x-auto scrollbar-hide", children: /* @__PURE__ */ jsx("ul", { className: "flex snap-x snap-mandatory gap-5 pb-2 sm:gap-6", style: { width: "max-content" }, children: FEATURES.map(({ icon: Icon, title }, i) => {
42
+ const hue = HUES[i % HUES.length];
43
+ return /* @__PURE__ */ jsxs(
44
+ "li",
45
+ {
46
+ className: cn(
47
+ "flex min-h-[168px] w-56 shrink-0 snap-start flex-col gap-4 rounded-2xl border bg-card p-6 sm:w-64",
48
+ hue.border
49
+ ),
50
+ children: [
51
+ /* @__PURE__ */ jsx("span", { className: cn("flex h-11 w-11 items-center justify-center rounded-xl", hue.tint), children: /* @__PURE__ */ jsx(Icon, { className: cn("h-6 w-6", hue.text) }) }),
52
+ /* @__PURE__ */ jsx("h3", { className: "text-lg font-black leading-snug tracking-tight", children: title })
53
+ ]
54
+ },
55
+ title
56
+ );
57
+ }) }) });
58
+ }
59
+ export {
60
+ DiscoverFeatures
61
+ };
62
+ //# sourceMappingURL=discover-features.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/components/discover-features.tsx"],"sourcesContent":["import {\n Code,\n Database,\n DoorOpen,\n EyeOff,\n FileCog,\n Gem,\n Globe,\n HandCoins,\n Lock,\n Percent,\n ScanEye,\n Scale,\n ShieldCheck,\n type LucideIcon,\n} from \"lucide-react\";\nimport { cn } from \"../utils/cn.js\";\n\nconst HUES = [\n { text: \"text-brand-blue\", border: \"border-brand-blue/30\", tint: \"bg-brand-blue/10\" },\n { text: \"text-brand-maeve\", border: \"border-brand-maeve/30\", tint: \"bg-brand-maeve/10\" },\n { text: \"text-brand-orange\", border: \"border-brand-orange/30\", tint: \"bg-brand-orange/10\" },\n { text: \"text-brand-purple\", border: \"border-brand-purple/30\", tint: \"bg-brand-purple/10\" },\n { text: \"text-brand-rose\", border: \"border-brand-rose/30\", tint: \"bg-brand-rose/10\" },\n];\n\nconst FEATURES: ReadonlyArray<{ icon: LucideIcon; title: string }> = [\n { icon: HandCoins, title: \"99% to creators and owners\" },\n { icon: Globe, title: \"Censorship resistance\" },\n { icon: ShieldCheck, title: \"Stark cryptography\" },\n { icon: EyeOff, title: \"Privacy by design\" },\n { icon: ScanEye, title: \"Zero knowledge proof with Starknet\" },\n { icon: Percent, title: \"Zero fees on protocols\" },\n { icon: Lock, title: \"Immutable smart contracts\" },\n { icon: DoorOpen, title: \"Permissionless\" },\n { icon: Database, title: \"Smart contracts are the source of truth\" },\n { icon: FileCog, title: \"Programmable IP\" },\n { icon: Gem, title: \"Immutable assets\" },\n { icon: Scale, title: \"IP protection compliance\" },\n { icon: Code, title: \"Open source and auditable\" },\n];\n\nexport function DiscoverFeatures() {\n return (\n <section className=\"w-full overflow-x-auto scrollbar-hide\">\n <ul className=\"flex snap-x snap-mandatory gap-5 pb-2 sm:gap-6\" style={{ width: \"max-content\" }}>\n {FEATURES.map(({ icon: Icon, title }, i) => {\n const hue = HUES[i % HUES.length]!;\n return (\n <li\n key={title}\n className={cn(\n \"flex min-h-[168px] w-56 shrink-0 snap-start flex-col gap-4 rounded-2xl border bg-card p-6 sm:w-64\",\n hue.border,\n )}\n >\n <span className={cn(\"flex h-11 w-11 items-center justify-center rounded-xl\", hue.tint)}>\n <Icon className={cn(\"h-6 w-6\", hue.text)} />\n </span>\n <h3 className=\"text-lg font-black leading-snug tracking-tight\">{title}</h3>\n </li>\n );\n })}\n </ul>\n </section>\n );\n}\n"],"mappings":"AAiDY,SAQI,KARJ;AAjDZ;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAEK;AACP,SAAS,UAAU;AAEnB,MAAM,OAAO;AAAA,EACX,EAAE,MAAM,mBAAmB,QAAQ,wBAAwB,MAAM,mBAAmB;AAAA,EACpF,EAAE,MAAM,oBAAoB,QAAQ,yBAAyB,MAAM,oBAAoB;AAAA,EACvF,EAAE,MAAM,qBAAqB,QAAQ,0BAA0B,MAAM,qBAAqB;AAAA,EAC1F,EAAE,MAAM,qBAAqB,QAAQ,0BAA0B,MAAM,qBAAqB;AAAA,EAC1F,EAAE,MAAM,mBAAmB,QAAQ,wBAAwB,MAAM,mBAAmB;AACtF;AAEA,MAAM,WAA+D;AAAA,EACnE,EAAE,MAAM,WAAW,OAAO,6BAA6B;AAAA,EACvD,EAAE,MAAM,OAAO,OAAO,wBAAwB;AAAA,EAC9C,EAAE,MAAM,aAAa,OAAO,qBAAqB;AAAA,EACjD,EAAE,MAAM,QAAQ,OAAO,oBAAoB;AAAA,EAC3C,EAAE,MAAM,SAAS,OAAO,qCAAqC;AAAA,EAC7D,EAAE,MAAM,SAAS,OAAO,yBAAyB;AAAA,EACjD,EAAE,MAAM,MAAM,OAAO,4BAA4B;AAAA,EACjD,EAAE,MAAM,UAAU,OAAO,iBAAiB;AAAA,EAC1C,EAAE,MAAM,UAAU,OAAO,0CAA0C;AAAA,EACnE,EAAE,MAAM,SAAS,OAAO,kBAAkB;AAAA,EAC1C,EAAE,MAAM,KAAK,OAAO,mBAAmB;AAAA,EACvC,EAAE,MAAM,OAAO,OAAO,2BAA2B;AAAA,EACjD,EAAE,MAAM,MAAM,OAAO,4BAA4B;AACnD;AAEO,SAAS,mBAAmB;AACjC,SACE,oBAAC,aAAQ,WAAU,yCACjB,8BAAC,QAAG,WAAU,kDAAiD,OAAO,EAAE,OAAO,cAAc,GAC1F,mBAAS,IAAI,CAAC,EAAE,MAAM,MAAM,MAAM,GAAG,MAAM;AAC1C,UAAM,MAAM,KAAK,IAAI,KAAK,MAAM;AAChC,WACE;AAAA,MAAC;AAAA;AAAA,QAEC,WAAW;AAAA,UACT;AAAA,UACA,IAAI;AAAA,QACN;AAAA,QAEA;AAAA,8BAAC,UAAK,WAAW,GAAG,yDAAyD,IAAI,IAAI,GACnF,8BAAC,QAAK,WAAW,GAAG,WAAW,IAAI,IAAI,GAAG,GAC5C;AAAA,UACA,oBAAC,QAAG,WAAU,kDAAkD,iBAAM;AAAA;AAAA;AAAA,MATjE;AAAA,IAUP;AAAA,EAEJ,CAAC,GACH,GACF;AAEJ;","names":[]}
@@ -30,6 +30,7 @@ var import_discover_hero = require("./discover-hero.js");
30
30
  var import_discover_collections_strip = require("./discover-collections-strip.js");
31
31
  var import_discover_feed_section = require("./discover-feed-section.js");
32
32
  var import_discover_community_section = require("./discover-community-section.js");
33
+ var import_discover_features = require("./discover-features.js");
33
34
  var import_ip_type_nav = require("./ip-type-nav.js");
34
35
  var import_medialane_app = require("./medialane-app.js");
35
36
  var import_use_orders = require("../utils/use-orders.js");
@@ -90,6 +91,7 @@ function DiscoverPage({ useMarketActions, heroBadge, heroHeadline }) {
90
91
  }
91
92
  ),
92
93
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ip_type_nav.IpTypeNav, {}),
94
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_discover_features.DiscoverFeatures, {}),
93
95
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_discover_community_section.DiscoverCommunitySection, {}),
94
96
  market.dialogs
95
97
  ] });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/components/discover-page.tsx"],"sourcesContent":["\"use client\";\n\nimport { assetHref, collectionHref } from \"@medialane/sdk\";\nimport { Sparkles } from \"lucide-react\";\nimport { PageContainer } from \"./page-container.js\";\nimport { DiscoverHero } from \"./discover-hero.js\";\nimport { DiscoverCollectionsStrip } from \"./discover-collections-strip.js\";\nimport { DiscoverActivityStrip } from \"./discover-feed-section.js\";\nimport { DiscoverCommunitySection } from \"./discover-community-section.js\";\nimport { IpTypeNav } from \"./ip-type-nav.js\";\nimport { useMedialaneApp } from \"./medialane-app.js\";\nimport type { CollectionMarketActions } from \"./collection-page.js\";\nimport { useOrders } from \"../utils/use-orders.js\";\nimport { useCollections } from \"../utils/use-collections.js\";\nimport { usePlatformStats } from \"../utils/use-platform-stats.js\";\nimport { isSameAddress } from \"../utils/same-address.js\";\n\nexport interface DiscoverPageProps {\n useMarketActions: () => CollectionMarketActions;\n heroBadge?: string;\n heroHeadline?: string;\n}\n\nexport function DiscoverPage({ useMarketActions, heroBadge, heroHeadline }: DiscoverPageProps) {\n const { walletAddress } = useMedialaneApp();\n const market = useMarketActions();\n const { stats } = usePlatformStats();\n const { orders: tickerOrders } = useOrders({ status: \"ACTIVE\", sort: \"recent\", limit: 14 });\n const { orders: feedOrders, isLoading: feedLoading } = useOrders({ status: \"ACTIVE\", sort: \"recent\", limit: 10 });\n const { collections: featured, isLoading: featuredLoading } = useCollections(1, 8, true);\n const { collections, isLoading: collectionsLoading } = useCollections(1, 8);\n\n return (\n <PageContainer className=\"box-border max-w-full space-y-14 px-4 pt-20 sm:space-y-20 sm:px-5 lg:px-6\">\n <div className=\"space-y-8 sm:space-y-10\">\n <DiscoverHero\n stats={stats ?? null}\n orders={tickerOrders}\n badgeText={heroBadge}\n headlineText={heroHeadline}\n getTickerHref={(o) => assetHref(\"STARKNET\", o.nftContract, o.nftTokenId)}\n />\n <div className=\"space-y-14 sm:space-y-20\">\n {(featuredLoading || featured.length > 0) && (\n <DiscoverCollectionsStrip\n collections={featured}\n isLoading={featuredLoading}\n getHref={(c) => collectionHref(\"STARKNET\", c.contractAddress)}\n allCollectionsHref=\"/collections\"\n title=\"Featured\"\n icon={<Sparkles />}\n />\n )}\n <DiscoverCollectionsStrip\n collections={collections}\n isLoading={collectionsLoading}\n getHref={(c) => collectionHref(\"STARKNET\", c.contractAddress)}\n allCollectionsHref=\"/collections\"\n />\n </div>\n </div>\n <DiscoverActivityStrip\n orders={feedOrders}\n isLoading={feedLoading}\n marketplaceHref=\"/marketplace\"\n onBuyOrder={market.buy}\n isOwnOrder={(o) => !!walletAddress && !!o.offerer && isSameAddress(o.offerer, walletAddress)}\n />\n <IpTypeNav />\n <DiscoverCommunitySection />\n {market.dialogs}\n </PageContainer>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAmCQ;AAjCR,iBAA0C;AAC1C,0BAAyB;AACzB,4BAA8B;AAC9B,2BAA6B;AAC7B,wCAAyC;AACzC,mCAAsC;AACtC,wCAAyC;AACzC,yBAA0B;AAC1B,2BAAgC;AAEhC,wBAA0B;AAC1B,6BAA+B;AAC/B,gCAAiC;AACjC,0BAA8B;AAQvB,SAAS,aAAa,EAAE,kBAAkB,WAAW,aAAa,GAAsB;AAC7F,QAAM,EAAE,cAAc,QAAI,sCAAgB;AAC1C,QAAM,SAAS,iBAAiB;AAChC,QAAM,EAAE,MAAM,QAAI,4CAAiB;AACnC,QAAM,EAAE,QAAQ,aAAa,QAAI,6BAAU,EAAE,QAAQ,UAAU,MAAM,UAAU,OAAO,GAAG,CAAC;AAC1F,QAAM,EAAE,QAAQ,YAAY,WAAW,YAAY,QAAI,6BAAU,EAAE,QAAQ,UAAU,MAAM,UAAU,OAAO,GAAG,CAAC;AAChH,QAAM,EAAE,aAAa,UAAU,WAAW,gBAAgB,QAAI,uCAAe,GAAG,GAAG,IAAI;AACvF,QAAM,EAAE,aAAa,WAAW,mBAAmB,QAAI,uCAAe,GAAG,CAAC;AAE1E,SACE,6CAAC,uCAAc,WAAU,6EACvB;AAAA,iDAAC,SAAI,WAAU,2BACb;AAAA;AAAA,QAAC;AAAA;AAAA,UACC,OAAO,SAAS;AAAA,UAChB,QAAQ;AAAA,UACR,WAAW;AAAA,UACX,cAAc;AAAA,UACd,eAAe,CAAC,UAAM,sBAAU,YAAY,EAAE,aAAa,EAAE,UAAU;AAAA;AAAA,MACzE;AAAA,MACA,6CAAC,SAAI,WAAU,4BACX;AAAA,4BAAmB,SAAS,SAAS,MACrC;AAAA,UAAC;AAAA;AAAA,YACC,aAAa;AAAA,YACb,WAAW;AAAA,YACX,SAAS,CAAC,UAAM,2BAAe,YAAY,EAAE,eAAe;AAAA,YAC5D,oBAAmB;AAAA,YACnB,OAAM;AAAA,YACN,MAAM,4CAAC,gCAAS;AAAA;AAAA,QAClB;AAAA,QAEF;AAAA,UAAC;AAAA;AAAA,YACC;AAAA,YACA,WAAW;AAAA,YACX,SAAS,CAAC,UAAM,2BAAe,YAAY,EAAE,eAAe;AAAA,YAC5D,oBAAmB;AAAA;AAAA,QACrB;AAAA,SACF;AAAA,OACF;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,QAAQ;AAAA,QACR,WAAW;AAAA,QACX,iBAAgB;AAAA,QAChB,YAAY,OAAO;AAAA,QACnB,YAAY,CAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC,EAAE,eAAW,mCAAc,EAAE,SAAS,aAAa;AAAA;AAAA,IAC7F;AAAA,IACA,4CAAC,gCAAU;AAAA,IACX,4CAAC,8DAAyB;AAAA,IACzB,OAAO;AAAA,KACV;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../src/components/discover-page.tsx"],"sourcesContent":["\"use client\";\n\nimport { assetHref, collectionHref } from \"@medialane/sdk\";\nimport { Sparkles } from \"lucide-react\";\nimport { PageContainer } from \"./page-container.js\";\nimport { DiscoverHero } from \"./discover-hero.js\";\nimport { DiscoverCollectionsStrip } from \"./discover-collections-strip.js\";\nimport { DiscoverActivityStrip } from \"./discover-feed-section.js\";\nimport { DiscoverCommunitySection } from \"./discover-community-section.js\";\nimport { DiscoverFeatures } from \"./discover-features.js\";\nimport { IpTypeNav } from \"./ip-type-nav.js\";\nimport { useMedialaneApp } from \"./medialane-app.js\";\nimport type { CollectionMarketActions } from \"./collection-page.js\";\nimport { useOrders } from \"../utils/use-orders.js\";\nimport { useCollections } from \"../utils/use-collections.js\";\nimport { usePlatformStats } from \"../utils/use-platform-stats.js\";\nimport { isSameAddress } from \"../utils/same-address.js\";\n\nexport interface DiscoverPageProps {\n useMarketActions: () => CollectionMarketActions;\n heroBadge?: string;\n heroHeadline?: string;\n}\n\nexport function DiscoverPage({ useMarketActions, heroBadge, heroHeadline }: DiscoverPageProps) {\n const { walletAddress } = useMedialaneApp();\n const market = useMarketActions();\n const { stats } = usePlatformStats();\n const { orders: tickerOrders } = useOrders({ status: \"ACTIVE\", sort: \"recent\", limit: 14 });\n const { orders: feedOrders, isLoading: feedLoading } = useOrders({ status: \"ACTIVE\", sort: \"recent\", limit: 10 });\n const { collections: featured, isLoading: featuredLoading } = useCollections(1, 8, true);\n const { collections, isLoading: collectionsLoading } = useCollections(1, 8);\n\n return (\n <PageContainer className=\"box-border max-w-full space-y-14 px-4 pt-20 sm:space-y-20 sm:px-5 lg:px-6\">\n <div className=\"space-y-8 sm:space-y-10\">\n <DiscoverHero\n stats={stats ?? null}\n orders={tickerOrders}\n badgeText={heroBadge}\n headlineText={heroHeadline}\n getTickerHref={(o) => assetHref(\"STARKNET\", o.nftContract, o.nftTokenId)}\n />\n <div className=\"space-y-14 sm:space-y-20\">\n {(featuredLoading || featured.length > 0) && (\n <DiscoverCollectionsStrip\n collections={featured}\n isLoading={featuredLoading}\n getHref={(c) => collectionHref(\"STARKNET\", c.contractAddress)}\n allCollectionsHref=\"/collections\"\n title=\"Featured\"\n icon={<Sparkles />}\n />\n )}\n <DiscoverCollectionsStrip\n collections={collections}\n isLoading={collectionsLoading}\n getHref={(c) => collectionHref(\"STARKNET\", c.contractAddress)}\n allCollectionsHref=\"/collections\"\n />\n </div>\n </div>\n <DiscoverActivityStrip\n orders={feedOrders}\n isLoading={feedLoading}\n marketplaceHref=\"/marketplace\"\n onBuyOrder={market.buy}\n isOwnOrder={(o) => !!walletAddress && !!o.offerer && isSameAddress(o.offerer, walletAddress)}\n />\n <IpTypeNav />\n <DiscoverFeatures />\n <DiscoverCommunitySection />\n {market.dialogs}\n </PageContainer>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAoCQ;AAlCR,iBAA0C;AAC1C,0BAAyB;AACzB,4BAA8B;AAC9B,2BAA6B;AAC7B,wCAAyC;AACzC,mCAAsC;AACtC,wCAAyC;AACzC,+BAAiC;AACjC,yBAA0B;AAC1B,2BAAgC;AAEhC,wBAA0B;AAC1B,6BAA+B;AAC/B,gCAAiC;AACjC,0BAA8B;AAQvB,SAAS,aAAa,EAAE,kBAAkB,WAAW,aAAa,GAAsB;AAC7F,QAAM,EAAE,cAAc,QAAI,sCAAgB;AAC1C,QAAM,SAAS,iBAAiB;AAChC,QAAM,EAAE,MAAM,QAAI,4CAAiB;AACnC,QAAM,EAAE,QAAQ,aAAa,QAAI,6BAAU,EAAE,QAAQ,UAAU,MAAM,UAAU,OAAO,GAAG,CAAC;AAC1F,QAAM,EAAE,QAAQ,YAAY,WAAW,YAAY,QAAI,6BAAU,EAAE,QAAQ,UAAU,MAAM,UAAU,OAAO,GAAG,CAAC;AAChH,QAAM,EAAE,aAAa,UAAU,WAAW,gBAAgB,QAAI,uCAAe,GAAG,GAAG,IAAI;AACvF,QAAM,EAAE,aAAa,WAAW,mBAAmB,QAAI,uCAAe,GAAG,CAAC;AAE1E,SACE,6CAAC,uCAAc,WAAU,6EACvB;AAAA,iDAAC,SAAI,WAAU,2BACb;AAAA;AAAA,QAAC;AAAA;AAAA,UACC,OAAO,SAAS;AAAA,UAChB,QAAQ;AAAA,UACR,WAAW;AAAA,UACX,cAAc;AAAA,UACd,eAAe,CAAC,UAAM,sBAAU,YAAY,EAAE,aAAa,EAAE,UAAU;AAAA;AAAA,MACzE;AAAA,MACA,6CAAC,SAAI,WAAU,4BACX;AAAA,4BAAmB,SAAS,SAAS,MACrC;AAAA,UAAC;AAAA;AAAA,YACC,aAAa;AAAA,YACb,WAAW;AAAA,YACX,SAAS,CAAC,UAAM,2BAAe,YAAY,EAAE,eAAe;AAAA,YAC5D,oBAAmB;AAAA,YACnB,OAAM;AAAA,YACN,MAAM,4CAAC,gCAAS;AAAA;AAAA,QAClB;AAAA,QAEF;AAAA,UAAC;AAAA;AAAA,YACC;AAAA,YACA,WAAW;AAAA,YACX,SAAS,CAAC,UAAM,2BAAe,YAAY,EAAE,eAAe;AAAA,YAC5D,oBAAmB;AAAA;AAAA,QACrB;AAAA,SACF;AAAA,OACF;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,QAAQ;AAAA,QACR,WAAW;AAAA,QACX,iBAAgB;AAAA,QAChB,YAAY,OAAO;AAAA,QACnB,YAAY,CAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC,EAAE,eAAW,mCAAc,EAAE,SAAS,aAAa;AAAA;AAAA,IAC7F;AAAA,IACA,4CAAC,gCAAU;AAAA,IACX,4CAAC,6CAAiB;AAAA,IAClB,4CAAC,8DAAyB;AAAA,IACzB,OAAO;AAAA,KACV;AAEJ;","names":[]}
@@ -7,6 +7,7 @@ import { DiscoverHero } from "./discover-hero.js";
7
7
  import { DiscoverCollectionsStrip } from "./discover-collections-strip.js";
8
8
  import { DiscoverActivityStrip } from "./discover-feed-section.js";
9
9
  import { DiscoverCommunitySection } from "./discover-community-section.js";
10
+ import { DiscoverFeatures } from "./discover-features.js";
10
11
  import { IpTypeNav } from "./ip-type-nav.js";
11
12
  import { useMedialaneApp } from "./medialane-app.js";
12
13
  import { useOrders } from "../utils/use-orders.js";
@@ -67,6 +68,7 @@ function DiscoverPage({ useMarketActions, heroBadge, heroHeadline }) {
67
68
  }
68
69
  ),
69
70
  /* @__PURE__ */ jsx(IpTypeNav, {}),
71
+ /* @__PURE__ */ jsx(DiscoverFeatures, {}),
70
72
  /* @__PURE__ */ jsx(DiscoverCommunitySection, {}),
71
73
  market.dialogs
72
74
  ] });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/components/discover-page.tsx"],"sourcesContent":["\"use client\";\n\nimport { assetHref, collectionHref } from \"@medialane/sdk\";\nimport { Sparkles } from \"lucide-react\";\nimport { PageContainer } from \"./page-container.js\";\nimport { DiscoverHero } from \"./discover-hero.js\";\nimport { DiscoverCollectionsStrip } from \"./discover-collections-strip.js\";\nimport { DiscoverActivityStrip } from \"./discover-feed-section.js\";\nimport { DiscoverCommunitySection } from \"./discover-community-section.js\";\nimport { IpTypeNav } from \"./ip-type-nav.js\";\nimport { useMedialaneApp } from \"./medialane-app.js\";\nimport type { CollectionMarketActions } from \"./collection-page.js\";\nimport { useOrders } from \"../utils/use-orders.js\";\nimport { useCollections } from \"../utils/use-collections.js\";\nimport { usePlatformStats } from \"../utils/use-platform-stats.js\";\nimport { isSameAddress } from \"../utils/same-address.js\";\n\nexport interface DiscoverPageProps {\n useMarketActions: () => CollectionMarketActions;\n heroBadge?: string;\n heroHeadline?: string;\n}\n\nexport function DiscoverPage({ useMarketActions, heroBadge, heroHeadline }: DiscoverPageProps) {\n const { walletAddress } = useMedialaneApp();\n const market = useMarketActions();\n const { stats } = usePlatformStats();\n const { orders: tickerOrders } = useOrders({ status: \"ACTIVE\", sort: \"recent\", limit: 14 });\n const { orders: feedOrders, isLoading: feedLoading } = useOrders({ status: \"ACTIVE\", sort: \"recent\", limit: 10 });\n const { collections: featured, isLoading: featuredLoading } = useCollections(1, 8, true);\n const { collections, isLoading: collectionsLoading } = useCollections(1, 8);\n\n return (\n <PageContainer className=\"box-border max-w-full space-y-14 px-4 pt-20 sm:space-y-20 sm:px-5 lg:px-6\">\n <div className=\"space-y-8 sm:space-y-10\">\n <DiscoverHero\n stats={stats ?? null}\n orders={tickerOrders}\n badgeText={heroBadge}\n headlineText={heroHeadline}\n getTickerHref={(o) => assetHref(\"STARKNET\", o.nftContract, o.nftTokenId)}\n />\n <div className=\"space-y-14 sm:space-y-20\">\n {(featuredLoading || featured.length > 0) && (\n <DiscoverCollectionsStrip\n collections={featured}\n isLoading={featuredLoading}\n getHref={(c) => collectionHref(\"STARKNET\", c.contractAddress)}\n allCollectionsHref=\"/collections\"\n title=\"Featured\"\n icon={<Sparkles />}\n />\n )}\n <DiscoverCollectionsStrip\n collections={collections}\n isLoading={collectionsLoading}\n getHref={(c) => collectionHref(\"STARKNET\", c.contractAddress)}\n allCollectionsHref=\"/collections\"\n />\n </div>\n </div>\n <DiscoverActivityStrip\n orders={feedOrders}\n isLoading={feedLoading}\n marketplaceHref=\"/marketplace\"\n onBuyOrder={market.buy}\n isOwnOrder={(o) => !!walletAddress && !!o.offerer && isSameAddress(o.offerer, walletAddress)}\n />\n <IpTypeNav />\n <DiscoverCommunitySection />\n {market.dialogs}\n </PageContainer>\n );\n}\n"],"mappings":";AAmCQ,cAOA,YAPA;AAjCR,SAAS,WAAW,sBAAsB;AAC1C,SAAS,gBAAgB;AACzB,SAAS,qBAAqB;AAC9B,SAAS,oBAAoB;AAC7B,SAAS,gCAAgC;AACzC,SAAS,6BAA6B;AACtC,SAAS,gCAAgC;AACzC,SAAS,iBAAiB;AAC1B,SAAS,uBAAuB;AAEhC,SAAS,iBAAiB;AAC1B,SAAS,sBAAsB;AAC/B,SAAS,wBAAwB;AACjC,SAAS,qBAAqB;AAQvB,SAAS,aAAa,EAAE,kBAAkB,WAAW,aAAa,GAAsB;AAC7F,QAAM,EAAE,cAAc,IAAI,gBAAgB;AAC1C,QAAM,SAAS,iBAAiB;AAChC,QAAM,EAAE,MAAM,IAAI,iBAAiB;AACnC,QAAM,EAAE,QAAQ,aAAa,IAAI,UAAU,EAAE,QAAQ,UAAU,MAAM,UAAU,OAAO,GAAG,CAAC;AAC1F,QAAM,EAAE,QAAQ,YAAY,WAAW,YAAY,IAAI,UAAU,EAAE,QAAQ,UAAU,MAAM,UAAU,OAAO,GAAG,CAAC;AAChH,QAAM,EAAE,aAAa,UAAU,WAAW,gBAAgB,IAAI,eAAe,GAAG,GAAG,IAAI;AACvF,QAAM,EAAE,aAAa,WAAW,mBAAmB,IAAI,eAAe,GAAG,CAAC;AAE1E,SACE,qBAAC,iBAAc,WAAU,6EACvB;AAAA,yBAAC,SAAI,WAAU,2BACb;AAAA;AAAA,QAAC;AAAA;AAAA,UACC,OAAO,SAAS;AAAA,UAChB,QAAQ;AAAA,UACR,WAAW;AAAA,UACX,cAAc;AAAA,UACd,eAAe,CAAC,MAAM,UAAU,YAAY,EAAE,aAAa,EAAE,UAAU;AAAA;AAAA,MACzE;AAAA,MACA,qBAAC,SAAI,WAAU,4BACX;AAAA,4BAAmB,SAAS,SAAS,MACrC;AAAA,UAAC;AAAA;AAAA,YACC,aAAa;AAAA,YACb,WAAW;AAAA,YACX,SAAS,CAAC,MAAM,eAAe,YAAY,EAAE,eAAe;AAAA,YAC5D,oBAAmB;AAAA,YACnB,OAAM;AAAA,YACN,MAAM,oBAAC,YAAS;AAAA;AAAA,QAClB;AAAA,QAEF;AAAA,UAAC;AAAA;AAAA,YACC;AAAA,YACA,WAAW;AAAA,YACX,SAAS,CAAC,MAAM,eAAe,YAAY,EAAE,eAAe;AAAA,YAC5D,oBAAmB;AAAA;AAAA,QACrB;AAAA,SACF;AAAA,OACF;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,QAAQ;AAAA,QACR,WAAW;AAAA,QACX,iBAAgB;AAAA,QAChB,YAAY,OAAO;AAAA,QACnB,YAAY,CAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC,EAAE,WAAW,cAAc,EAAE,SAAS,aAAa;AAAA;AAAA,IAC7F;AAAA,IACA,oBAAC,aAAU;AAAA,IACX,oBAAC,4BAAyB;AAAA,IACzB,OAAO;AAAA,KACV;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../src/components/discover-page.tsx"],"sourcesContent":["\"use client\";\n\nimport { assetHref, collectionHref } from \"@medialane/sdk\";\nimport { Sparkles } from \"lucide-react\";\nimport { PageContainer } from \"./page-container.js\";\nimport { DiscoverHero } from \"./discover-hero.js\";\nimport { DiscoverCollectionsStrip } from \"./discover-collections-strip.js\";\nimport { DiscoverActivityStrip } from \"./discover-feed-section.js\";\nimport { DiscoverCommunitySection } from \"./discover-community-section.js\";\nimport { DiscoverFeatures } from \"./discover-features.js\";\nimport { IpTypeNav } from \"./ip-type-nav.js\";\nimport { useMedialaneApp } from \"./medialane-app.js\";\nimport type { CollectionMarketActions } from \"./collection-page.js\";\nimport { useOrders } from \"../utils/use-orders.js\";\nimport { useCollections } from \"../utils/use-collections.js\";\nimport { usePlatformStats } from \"../utils/use-platform-stats.js\";\nimport { isSameAddress } from \"../utils/same-address.js\";\n\nexport interface DiscoverPageProps {\n useMarketActions: () => CollectionMarketActions;\n heroBadge?: string;\n heroHeadline?: string;\n}\n\nexport function DiscoverPage({ useMarketActions, heroBadge, heroHeadline }: DiscoverPageProps) {\n const { walletAddress } = useMedialaneApp();\n const market = useMarketActions();\n const { stats } = usePlatformStats();\n const { orders: tickerOrders } = useOrders({ status: \"ACTIVE\", sort: \"recent\", limit: 14 });\n const { orders: feedOrders, isLoading: feedLoading } = useOrders({ status: \"ACTIVE\", sort: \"recent\", limit: 10 });\n const { collections: featured, isLoading: featuredLoading } = useCollections(1, 8, true);\n const { collections, isLoading: collectionsLoading } = useCollections(1, 8);\n\n return (\n <PageContainer className=\"box-border max-w-full space-y-14 px-4 pt-20 sm:space-y-20 sm:px-5 lg:px-6\">\n <div className=\"space-y-8 sm:space-y-10\">\n <DiscoverHero\n stats={stats ?? null}\n orders={tickerOrders}\n badgeText={heroBadge}\n headlineText={heroHeadline}\n getTickerHref={(o) => assetHref(\"STARKNET\", o.nftContract, o.nftTokenId)}\n />\n <div className=\"space-y-14 sm:space-y-20\">\n {(featuredLoading || featured.length > 0) && (\n <DiscoverCollectionsStrip\n collections={featured}\n isLoading={featuredLoading}\n getHref={(c) => collectionHref(\"STARKNET\", c.contractAddress)}\n allCollectionsHref=\"/collections\"\n title=\"Featured\"\n icon={<Sparkles />}\n />\n )}\n <DiscoverCollectionsStrip\n collections={collections}\n isLoading={collectionsLoading}\n getHref={(c) => collectionHref(\"STARKNET\", c.contractAddress)}\n allCollectionsHref=\"/collections\"\n />\n </div>\n </div>\n <DiscoverActivityStrip\n orders={feedOrders}\n isLoading={feedLoading}\n marketplaceHref=\"/marketplace\"\n onBuyOrder={market.buy}\n isOwnOrder={(o) => !!walletAddress && !!o.offerer && isSameAddress(o.offerer, walletAddress)}\n />\n <IpTypeNav />\n <DiscoverFeatures />\n <DiscoverCommunitySection />\n {market.dialogs}\n </PageContainer>\n );\n}\n"],"mappings":";AAoCQ,cAOA,YAPA;AAlCR,SAAS,WAAW,sBAAsB;AAC1C,SAAS,gBAAgB;AACzB,SAAS,qBAAqB;AAC9B,SAAS,oBAAoB;AAC7B,SAAS,gCAAgC;AACzC,SAAS,6BAA6B;AACtC,SAAS,gCAAgC;AACzC,SAAS,wBAAwB;AACjC,SAAS,iBAAiB;AAC1B,SAAS,uBAAuB;AAEhC,SAAS,iBAAiB;AAC1B,SAAS,sBAAsB;AAC/B,SAAS,wBAAwB;AACjC,SAAS,qBAAqB;AAQvB,SAAS,aAAa,EAAE,kBAAkB,WAAW,aAAa,GAAsB;AAC7F,QAAM,EAAE,cAAc,IAAI,gBAAgB;AAC1C,QAAM,SAAS,iBAAiB;AAChC,QAAM,EAAE,MAAM,IAAI,iBAAiB;AACnC,QAAM,EAAE,QAAQ,aAAa,IAAI,UAAU,EAAE,QAAQ,UAAU,MAAM,UAAU,OAAO,GAAG,CAAC;AAC1F,QAAM,EAAE,QAAQ,YAAY,WAAW,YAAY,IAAI,UAAU,EAAE,QAAQ,UAAU,MAAM,UAAU,OAAO,GAAG,CAAC;AAChH,QAAM,EAAE,aAAa,UAAU,WAAW,gBAAgB,IAAI,eAAe,GAAG,GAAG,IAAI;AACvF,QAAM,EAAE,aAAa,WAAW,mBAAmB,IAAI,eAAe,GAAG,CAAC;AAE1E,SACE,qBAAC,iBAAc,WAAU,6EACvB;AAAA,yBAAC,SAAI,WAAU,2BACb;AAAA;AAAA,QAAC;AAAA;AAAA,UACC,OAAO,SAAS;AAAA,UAChB,QAAQ;AAAA,UACR,WAAW;AAAA,UACX,cAAc;AAAA,UACd,eAAe,CAAC,MAAM,UAAU,YAAY,EAAE,aAAa,EAAE,UAAU;AAAA;AAAA,MACzE;AAAA,MACA,qBAAC,SAAI,WAAU,4BACX;AAAA,4BAAmB,SAAS,SAAS,MACrC;AAAA,UAAC;AAAA;AAAA,YACC,aAAa;AAAA,YACb,WAAW;AAAA,YACX,SAAS,CAAC,MAAM,eAAe,YAAY,EAAE,eAAe;AAAA,YAC5D,oBAAmB;AAAA,YACnB,OAAM;AAAA,YACN,MAAM,oBAAC,YAAS;AAAA;AAAA,QAClB;AAAA,QAEF;AAAA,UAAC;AAAA;AAAA,YACC;AAAA,YACA,WAAW;AAAA,YACX,SAAS,CAAC,MAAM,eAAe,YAAY,EAAE,eAAe;AAAA,YAC5D,oBAAmB;AAAA;AAAA,QACrB;AAAA,SACF;AAAA,OACF;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,QAAQ;AAAA,QACR,WAAW;AAAA,QACX,iBAAgB;AAAA,QAChB,YAAY,OAAO;AAAA,QACnB,YAAY,CAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC,EAAE,WAAW,cAAc,EAAE,SAAS,aAAa;AAAA;AAAA,IAC7F;AAAA,IACA,oBAAC,aAAU;AAAA,IACX,oBAAC,oBAAiB;AAAA,IAClB,oBAAC,4BAAyB;AAAA,IACzB,OAAO;AAAA,KACV;AAEJ;","names":[]}
@@ -16,7 +16,6 @@ declare const editionMintSchema: z.ZodObject<{
16
16
  royalty: z.ZodNumber;
17
17
  }, "strip", z.ZodTypeAny, {
18
18
  name: string;
19
- value: string;
20
19
  ipType: "Audio" | "Video" | "Art" | "Photography" | "NFT" | "Software" | "RWA" | "Patents" | "Posts" | "Publications" | "Documents" | "Custom";
21
20
  licenseType: string;
22
21
  commercialUse: "Yes" | "No";
@@ -25,12 +24,12 @@ declare const editionMintSchema: z.ZodObject<{
25
24
  geographicScope: string;
26
25
  aiPolicy: "Allowed" | "Not Allowed" | "Training Only";
27
26
  royalty: number;
27
+ value: string;
28
28
  recipient: string;
29
29
  description?: string | undefined;
30
30
  external_url?: string | undefined;
31
31
  }, {
32
32
  name: string;
33
- value: string;
34
33
  ipType: "Audio" | "Video" | "Art" | "Photography" | "NFT" | "Software" | "RWA" | "Patents" | "Posts" | "Publications" | "Documents" | "Custom";
35
34
  licenseType: string;
36
35
  commercialUse: "Yes" | "No";
@@ -39,6 +38,7 @@ declare const editionMintSchema: z.ZodObject<{
39
38
  geographicScope: string;
40
39
  aiPolicy: "Allowed" | "Not Allowed" | "Training Only";
41
40
  royalty: number;
41
+ value: string;
42
42
  recipient: string;
43
43
  description?: string | undefined;
44
44
  external_url?: string | undefined;
@@ -16,7 +16,6 @@ declare const editionMintSchema: z.ZodObject<{
16
16
  royalty: z.ZodNumber;
17
17
  }, "strip", z.ZodTypeAny, {
18
18
  name: string;
19
- value: string;
20
19
  ipType: "Audio" | "Video" | "Art" | "Photography" | "NFT" | "Software" | "RWA" | "Patents" | "Posts" | "Publications" | "Documents" | "Custom";
21
20
  licenseType: string;
22
21
  commercialUse: "Yes" | "No";
@@ -25,12 +24,12 @@ declare const editionMintSchema: z.ZodObject<{
25
24
  geographicScope: string;
26
25
  aiPolicy: "Allowed" | "Not Allowed" | "Training Only";
27
26
  royalty: number;
27
+ value: string;
28
28
  recipient: string;
29
29
  description?: string | undefined;
30
30
  external_url?: string | undefined;
31
31
  }, {
32
32
  name: string;
33
- value: string;
34
33
  ipType: "Audio" | "Video" | "Art" | "Photography" | "NFT" | "Software" | "RWA" | "Patents" | "Posts" | "Publications" | "Documents" | "Custom";
35
34
  licenseType: string;
36
35
  commercialUse: "Yes" | "No";
@@ -39,6 +38,7 @@ declare const editionMintSchema: z.ZodObject<{
39
38
  geographicScope: string;
40
39
  aiPolicy: "Allowed" | "Not Allowed" | "Training Only";
41
40
  royalty: number;
41
+ value: string;
42
42
  recipient: string;
43
43
  description?: string | undefined;
44
44
  external_url?: string | undefined;
@@ -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?: "left" | "right" | "bottom" | "top" | null | undefined;
13
+ side?: "bottom" | "left" | "right" | "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?: "left" | "right" | "bottom" | "top" | null | undefined;
13
+ side?: "bottom" | "left" | "right" | "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;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@medialane/ui",
3
- "version": "0.329.0",
3
+ "version": "0.331.0",
4
4
  "description": "Shared UI components for Medialane apps",
5
5
  "type": "module",
6
6
  "sideEffects": false,