@almanaclabs/blaze-ui 0.10.0 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/app-shell/app-shell.d.ts +90 -0
- package/dist/components/app-shell/app-shell.d.ts.map +1 -0
- package/dist/components/app-shell/app-shell.js +149 -0
- package/dist/components/app-shell/index.d.ts +2 -0
- package/dist/components/app-shell/index.d.ts.map +1 -0
- package/dist/components/approval-card/approval-card.d.ts +19 -0
- package/dist/components/approval-card/approval-card.d.ts.map +1 -0
- package/dist/components/approval-card/approval-card.js +42 -0
- package/dist/components/approval-card/index.d.ts +2 -0
- package/dist/components/approval-card/index.d.ts.map +1 -0
- package/dist/components/badge/badge.d.ts +1 -1
- package/dist/components/chat-bar/chat-bar.d.ts +26 -0
- package/dist/components/chat-bar/chat-bar.d.ts.map +1 -0
- package/dist/components/chat-bar/chat-bar.js +58 -0
- package/dist/components/chat-bar/index.d.ts +2 -0
- package/dist/components/chat-bar/index.d.ts.map +1 -0
- package/dist/components/dense-table/dense-table.d.ts +36 -0
- package/dist/components/dense-table/dense-table.d.ts.map +1 -0
- package/dist/components/dense-table/dense-table.js +41 -0
- package/dist/components/dense-table/index.d.ts +2 -0
- package/dist/components/dense-table/index.d.ts.map +1 -0
- package/dist/components/editable-text/editable-text.d.ts +26 -0
- package/dist/components/editable-text/editable-text.d.ts.map +1 -0
- package/dist/components/editable-text/editable-text.js +82 -0
- package/dist/components/editable-text/index.d.ts +2 -0
- package/dist/components/editable-text/index.d.ts.map +1 -0
- package/dist/components/face-stack-button/face-stack-button.d.ts +31 -0
- package/dist/components/face-stack-button/face-stack-button.d.ts.map +1 -0
- package/dist/components/face-stack-button/face-stack-button.js +47 -0
- package/dist/components/face-stack-button/index.d.ts +2 -0
- package/dist/components/face-stack-button/index.d.ts.map +1 -0
- package/dist/components/filter-chips/filter-chips.d.ts +23 -0
- package/dist/components/filter-chips/filter-chips.d.ts.map +1 -0
- package/dist/components/filter-chips/filter-chips.js +34 -0
- package/dist/components/filter-chips/index.d.ts +2 -0
- package/dist/components/filter-chips/index.d.ts.map +1 -0
- package/dist/components/goal-card/goal-card.d.ts +51 -0
- package/dist/components/goal-card/goal-card.d.ts.map +1 -0
- package/dist/components/goal-card/goal-card.js +109 -0
- package/dist/components/goal-card/index.d.ts +2 -0
- package/dist/components/goal-card/index.d.ts.map +1 -0
- package/dist/components/input-group/input-group.d.ts +1 -1
- package/dist/components/item/item.d.ts +1 -1
- package/dist/components/item/item.d.ts.map +1 -1
- package/dist/components/item/item.js +3 -2
- package/dist/components/media-thumbnail/index.d.ts +2 -0
- package/dist/components/media-thumbnail/index.d.ts.map +1 -0
- package/dist/components/media-thumbnail/media-thumbnail.d.ts +21 -0
- package/dist/components/media-thumbnail/media-thumbnail.d.ts.map +1 -0
- package/dist/components/media-thumbnail/media-thumbnail.js +50 -0
- package/dist/components/metric-tile/index.d.ts +2 -0
- package/dist/components/metric-tile/index.d.ts.map +1 -0
- package/dist/components/metric-tile/metric-tile.d.ts +34 -0
- package/dist/components/metric-tile/metric-tile.d.ts.map +1 -0
- package/dist/components/metric-tile/metric-tile.js +75 -0
- package/dist/components/page-header/index.d.ts +2 -0
- package/dist/components/page-header/index.d.ts.map +1 -0
- package/dist/components/page-header/page-header.d.ts +16 -0
- package/dist/components/page-header/page-header.d.ts.map +1 -0
- package/dist/components/page-header/page-header.js +38 -0
- package/dist/components/platform-avatar/index.d.ts +2 -0
- package/dist/components/platform-avatar/index.d.ts.map +1 -0
- package/dist/components/platform-avatar/platform-avatar.d.ts +23 -0
- package/dist/components/platform-avatar/platform-avatar.d.ts.map +1 -0
- package/dist/components/platform-avatar/platform-avatar.js +54 -0
- package/dist/components/platform-icon/index.d.ts +2 -0
- package/dist/components/platform-icon/index.d.ts.map +1 -0
- package/dist/components/platform-icon/platform-icon.d.ts +38 -0
- package/dist/components/platform-icon/platform-icon.d.ts.map +1 -0
- package/dist/components/platform-icon/platform-icon.js +272 -0
- package/dist/components/sidebar/sidebar.js +19 -19
- package/dist/components/signal-strip/index.d.ts +2 -0
- package/dist/components/signal-strip/index.d.ts.map +1 -0
- package/dist/components/signal-strip/signal-strip.d.ts +34 -0
- package/dist/components/signal-strip/signal-strip.d.ts.map +1 -0
- package/dist/components/signal-strip/signal-strip.js +84 -0
- package/dist/components/source-avatar/index.d.ts +2 -0
- package/dist/components/source-avatar/index.d.ts.map +1 -0
- package/dist/components/source-avatar/source-avatar.d.ts +16 -0
- package/dist/components/source-avatar/source-avatar.d.ts.map +1 -0
- package/dist/components/source-avatar/source-avatar.js +15 -0
- package/dist/components/stacked-bar-chart/index.d.ts +2 -0
- package/dist/components/stacked-bar-chart/index.d.ts.map +1 -0
- package/dist/components/stacked-bar-chart/stacked-bar-chart.d.ts +80 -0
- package/dist/components/stacked-bar-chart/stacked-bar-chart.d.ts.map +1 -0
- package/dist/components/stacked-bar-chart/stacked-bar-chart.js +240 -0
- package/dist/components/state-banner/index.d.ts +2 -0
- package/dist/components/state-banner/index.d.ts.map +1 -0
- package/dist/components/state-banner/state-banner.d.ts +32 -0
- package/dist/components/state-banner/state-banner.d.ts.map +1 -0
- package/dist/components/state-banner/state-banner.js +70 -0
- package/dist/components/status-indicator/index.d.ts +2 -0
- package/dist/components/status-indicator/index.d.ts.map +1 -0
- package/dist/components/status-indicator/status-indicator.d.ts +21 -0
- package/dist/components/status-indicator/status-indicator.d.ts.map +1 -0
- package/dist/components/status-indicator/status-indicator.js +30 -0
- package/dist/components/suggest-chips/index.d.ts +2 -0
- package/dist/components/suggest-chips/index.d.ts.map +1 -0
- package/dist/components/suggest-chips/suggest-chips.d.ts +13 -0
- package/dist/components/suggest-chips/suggest-chips.d.ts.map +1 -0
- package/dist/components/suggest-chips/suggest-chips.js +24 -0
- package/dist/index.d.ts +20 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +68 -49
- package/package.json +1 -1
- package/src/styles/globals.css +40 -0
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { cn as e } from "../../lib/utils.js";
|
|
2
|
+
import "react";
|
|
3
|
+
import { jsx as t, jsxs as n } from "react/jsx-runtime";
|
|
4
|
+
//#region src/components/page-header/page-header.tsx
|
|
5
|
+
function r({ title: r, subtitle: i, eyebrow: a, actions: o, display: s = !1, className: c, ...l }) {
|
|
6
|
+
return /* @__PURE__ */ n("header", {
|
|
7
|
+
"data-slot": "page-header",
|
|
8
|
+
className: e("flex items-start justify-between gap-6", c),
|
|
9
|
+
...l,
|
|
10
|
+
children: [/* @__PURE__ */ n("div", {
|
|
11
|
+
"data-slot": "page-header-content",
|
|
12
|
+
className: "min-w-0",
|
|
13
|
+
children: [
|
|
14
|
+
a ? /* @__PURE__ */ t("p", {
|
|
15
|
+
"data-slot": "page-header-eyebrow",
|
|
16
|
+
className: "type-meta mb-1.5 font-medium text-muted-foreground",
|
|
17
|
+
children: a
|
|
18
|
+
}) : null,
|
|
19
|
+
/* @__PURE__ */ t("h1", {
|
|
20
|
+
"data-slot": "page-header-title",
|
|
21
|
+
className: s ? "type-display-title" : "type-page-title",
|
|
22
|
+
children: r
|
|
23
|
+
}),
|
|
24
|
+
i ? /* @__PURE__ */ t("p", {
|
|
25
|
+
"data-slot": "page-header-subtitle",
|
|
26
|
+
className: "type-lead mt-2 max-w-[760px] text-muted-foreground",
|
|
27
|
+
children: i
|
|
28
|
+
}) : null
|
|
29
|
+
]
|
|
30
|
+
}), o ? /* @__PURE__ */ t("div", {
|
|
31
|
+
"data-slot": "page-header-actions",
|
|
32
|
+
className: "flex flex-none items-center gap-2",
|
|
33
|
+
children: o
|
|
34
|
+
}) : null]
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
//#endregion
|
|
38
|
+
export { r as PageHeader };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/platform-avatar/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Avatar } from '../avatar';
|
|
2
|
+
import { Platform } from '../platform-icon/platform-icon';
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
type PlatformAvatarProps = Omit<React.ComponentProps<typeof Avatar>, 'size' | 'children' | 'style'> & {
|
|
5
|
+
style?: React.CSSProperties;
|
|
6
|
+
/** Profile photo. Without one, or while it loads, the first letter of `name` shows. */
|
|
7
|
+
src?: string | null;
|
|
8
|
+
/** Account or person name; its first letter is the fallback. A leading @ is skipped. */
|
|
9
|
+
name?: string;
|
|
10
|
+
/** Text alternative for the photo. Empty by default, since a name usually sits beside it. */
|
|
11
|
+
alt?: string;
|
|
12
|
+
/** Diameter in pixels. The scorecard uses 18, 20, 24, 26 and 32. */
|
|
13
|
+
size?: number;
|
|
14
|
+
/** Shows the platform's mark in a small badge at the bottom-right corner. */
|
|
15
|
+
platform?: Platform;
|
|
16
|
+
/** Names the badge's platform for assistive tech when no visible text says it. */
|
|
17
|
+
platformLabel?: string | boolean;
|
|
18
|
+
/** `cover` fills the circle with a photo; `contain` insets a logo on the card surface with a hairline ring. */
|
|
19
|
+
fit?: 'cover' | 'contain';
|
|
20
|
+
};
|
|
21
|
+
declare function PlatformAvatar({ src, name, alt, size, platform, platformLabel, fit, className, style, ...props }: PlatformAvatarProps): React.JSX.Element;
|
|
22
|
+
export { PlatformAvatar, type PlatformAvatarProps };
|
|
23
|
+
//# sourceMappingURL=platform-avatar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform-avatar.d.ts","sourceRoot":"","sources":["../../../src/components/platform-avatar/platform-avatar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,OAAO,EAAE,MAAM,EAA+B,MAAM,WAAW,CAAA;AAC/D,OAAO,EAGL,KAAK,QAAQ,EACd,MAAM,gCAAgC,CAAA;AAEvC,KAAK,mBAAmB,GAAG,IAAI,CAC7B,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,EACnC,MAAM,GAAG,UAAU,GAAG,OAAO,CAC9B,GAAG;IACF,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;IAC3B,uFAAuF;IACvF,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,wFAAwF;IACxF,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,6FAA6F;IAC7F,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,oEAAoE;IACpE,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,kFAAkF;IAClF,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;IAChC,+GAA+G;IAC/G,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC1B,CAAA;AAWD,iBAAS,cAAc,CAAC,EACtB,GAAG,EACH,IAAI,EACJ,GAAQ,EACR,IAAS,EACT,QAAQ,EACR,aAAa,EACb,GAAa,EACb,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,mBAAmB,qBAkDrB;AAED,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,CAAA"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { cn as e } from "../../lib/utils.js";
|
|
2
|
+
import { Avatar as t, AvatarFallback as n, AvatarImage as r } from "../avatar/avatar.js";
|
|
3
|
+
import { PLATFORM_LABEL as i, PlatformIcon as a } from "../platform-icon/platform-icon.js";
|
|
4
|
+
import "react";
|
|
5
|
+
import { jsx as o, jsxs as s } from "react/jsx-runtime";
|
|
6
|
+
//#region src/components/platform-avatar/platform-avatar.tsx
|
|
7
|
+
function c(e) {
|
|
8
|
+
return (e ?? "").replace(/^@/, "").charAt(0).toUpperCase();
|
|
9
|
+
}
|
|
10
|
+
function l(e) {
|
|
11
|
+
return Math.max(10, Math.round(e * .45));
|
|
12
|
+
}
|
|
13
|
+
function u({ src: u, name: d, alt: f = "", size: p = 24, platform: m, platformLabel: h, fit: g = "cover", className: _, style: v, ...y }) {
|
|
14
|
+
let b = l(p), x = m && h ? typeof h == "string" ? h : i[m] : void 0;
|
|
15
|
+
return /* @__PURE__ */ s(t, {
|
|
16
|
+
"data-platform": m,
|
|
17
|
+
"data-fit": g,
|
|
18
|
+
className: e("bg-surface-subtle after:hidden", g === "contain" && "bg-card ring-1 ring-border-subtle", _),
|
|
19
|
+
style: {
|
|
20
|
+
width: p,
|
|
21
|
+
height: p,
|
|
22
|
+
"--platform-avatar-size": `${p}px`,
|
|
23
|
+
...v
|
|
24
|
+
},
|
|
25
|
+
...y,
|
|
26
|
+
children: [
|
|
27
|
+
u ? /* @__PURE__ */ o(r, {
|
|
28
|
+
src: u,
|
|
29
|
+
alt: f,
|
|
30
|
+
className: e(g === "contain" && "bg-card object-contain p-0.5")
|
|
31
|
+
}) : null,
|
|
32
|
+
/* @__PURE__ */ o(n, {
|
|
33
|
+
"aria-hidden": "true",
|
|
34
|
+
className: "bg-surface-subtle font-medium text-muted-foreground text-[length:calc(var(--platform-avatar-size)*0.45)]",
|
|
35
|
+
children: c(d)
|
|
36
|
+
}),
|
|
37
|
+
m ? /* @__PURE__ */ o("span", {
|
|
38
|
+
"data-slot": "platform-avatar-badge",
|
|
39
|
+
className: "absolute -right-0.5 -bottom-0.5 z-10 flex items-center justify-center rounded-full bg-card ring-2 ring-card",
|
|
40
|
+
style: {
|
|
41
|
+
width: b,
|
|
42
|
+
height: b
|
|
43
|
+
},
|
|
44
|
+
children: /* @__PURE__ */ o(a, {
|
|
45
|
+
platform: m,
|
|
46
|
+
size: b - 2,
|
|
47
|
+
title: x
|
|
48
|
+
})
|
|
49
|
+
}) : null
|
|
50
|
+
]
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
//#endregion
|
|
54
|
+
export { u as PlatformAvatar };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/platform-icon/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
type Platform = 'x' | 'threads' | 'instagram' | 'facebook' | 'bluesky' | 'linkedin' | 'tiktok' | 'youtube' | 'google' | 'beehiiv' | 'reddit' | 'gmail' | 'outlook' | 'microsoft' | 'email' | 'phone';
|
|
3
|
+
declare const PLATFORMS: readonly Platform[];
|
|
4
|
+
declare const PLATFORM_COLOR: Record<Platform, string>;
|
|
5
|
+
declare const PLATFORM_LABEL: Record<Platform, string>;
|
|
6
|
+
type BrandIconProps = Omit<React.SVGProps<SVGSVGElement>, 'ref' | 'stroke'> & {
|
|
7
|
+
size?: number | string;
|
|
8
|
+
stroke?: number | string;
|
|
9
|
+
title?: string;
|
|
10
|
+
};
|
|
11
|
+
type BrandIcon = React.ForwardRefExoticComponent<BrandIconProps & React.RefAttributes<SVGSVGElement>>;
|
|
12
|
+
declare const BrandX: BrandIcon;
|
|
13
|
+
declare const BrandThreads: BrandIcon;
|
|
14
|
+
declare const BrandFacebook: BrandIcon;
|
|
15
|
+
declare const BrandLinkedin: BrandIcon;
|
|
16
|
+
declare const BrandTiktok: BrandIcon;
|
|
17
|
+
declare const BrandYoutube: BrandIcon;
|
|
18
|
+
declare const BrandReddit: BrandIcon;
|
|
19
|
+
declare const BrandBluesky: BrandIcon;
|
|
20
|
+
declare const BrandInstagram: BrandIcon;
|
|
21
|
+
declare const BrandGoogle: BrandIcon;
|
|
22
|
+
declare const BrandBeehiiv: BrandIcon;
|
|
23
|
+
declare const BrandGmail: BrandIcon;
|
|
24
|
+
declare const BrandOutlook: BrandIcon;
|
|
25
|
+
declare const BrandMicrosoft: BrandIcon;
|
|
26
|
+
declare const BrandEmail: BrandIcon;
|
|
27
|
+
declare const BrandPhone: BrandIcon;
|
|
28
|
+
declare const PLATFORM_ICON: Record<Platform, BrandIcon>;
|
|
29
|
+
type PlatformIconProps = Omit<BrandIconProps, 'size'> & {
|
|
30
|
+
platform: Platform;
|
|
31
|
+
/** Rendered width and height in pixels. */
|
|
32
|
+
size?: number;
|
|
33
|
+
/** Names the mark for assistive tech; omit when a visible label says the platform. */
|
|
34
|
+
title?: string;
|
|
35
|
+
};
|
|
36
|
+
declare function PlatformIcon({ platform, size, className, style, ...props }: PlatformIconProps): React.JSX.Element;
|
|
37
|
+
export { PlatformIcon, PLATFORMS, PLATFORM_COLOR, PLATFORM_ICON, PLATFORM_LABEL, BrandX, BrandThreads, BrandInstagram, BrandFacebook, BrandBluesky, BrandLinkedin, BrandTiktok, BrandYoutube, BrandGoogle, BrandBeehiiv, BrandReddit, BrandGmail, BrandOutlook, BrandMicrosoft, BrandEmail, BrandPhone, type BrandIcon, type BrandIconProps, type Platform, type PlatformIconProps, };
|
|
38
|
+
//# sourceMappingURL=platform-icon.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform-icon.d.ts","sourceRoot":"","sources":["../../../src/components/platform-icon/platform-icon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAyB9B,KAAK,QAAQ,GACT,GAAG,GACH,SAAS,GACT,WAAW,GACX,UAAU,GACV,SAAS,GACT,UAAU,GACV,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,OAAO,GACP,SAAS,GACT,WAAW,GACX,OAAO,GACP,OAAO,CAAA;AAEX,QAAA,MAAM,SAAS,EAAE,SAAS,QAAQ,EAiBjC,CAAA;AAID,QAAA,MAAM,cAAc,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAiB5C,CAAA;AAED,QAAA,MAAM,cAAc,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAiB5C,CAAA;AAMD,KAAK,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC,GAAG;IAC5E,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACxB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,KAAK,SAAS,GAAG,KAAK,CAAC,yBAAyB,CAC9C,cAAc,GAAG,KAAK,CAAC,aAAa,CAAC,aAAa,CAAC,CACpD,CAAA;AAqCD,QAAA,MAAM,MAAM,WAAkD,CAAA;AAC9D,QAAA,MAAM,YAAY,WAA8D,CAAA;AAChF,QAAA,MAAM,aAAa,WAIlB,CAAA;AACD,QAAA,MAAM,aAAa,WAIlB,CAAA;AACD,QAAA,MAAM,WAAW,WAIhB,CAAA;AACD,QAAA,MAAM,YAAY,WAIjB,CAAA;AACD,QAAA,MAAM,WAAW,WAA2D,CAAA;AAE5E,QAAA,MAAM,YAAY,WAKjB,CAAA;AAmCD,QAAA,MAAM,cAAc,WAgBlB,CAAA;AAGF,QAAA,MAAM,WAAW,WAmBf,CAAA;AAGF,QAAA,MAAM,YAAY,WAYhB,CAAA;AAGF,QAAA,MAAM,UAAU,WAcd,CAAA;AAGF,QAAA,MAAM,YAAY,WA4BhB,CAAA;AAGF,QAAA,MAAM,cAAc,WAOlB,CAAA;AAGF,QAAA,MAAM,UAAU,WAAkD,CAAA;AAClE,QAAA,MAAM,UAAU,WAAmD,CAAA;AAEnE,QAAA,MAAM,aAAa,EAAE,MAAM,CAAC,QAAQ,EAAE,SAAS,CAiB9C,CAAA;AAED,KAAK,iBAAiB,GAAG,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,GAAG;IACtD,QAAQ,EAAE,QAAQ,CAAA;IAClB,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,sFAAsF;IACtF,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,iBAAS,YAAY,CAAC,EACpB,QAAQ,EACR,IAAS,EACT,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,iBAAiB,qBAanB;AAED,OAAO,EACL,YAAY,EACZ,SAAS,EACT,cAAc,EACd,aAAa,EACb,cAAc,EACd,MAAM,EACN,YAAY,EACZ,cAAc,EACd,aAAa,EACb,YAAY,EACZ,aAAa,EACb,WAAW,EACX,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,WAAW,EACX,UAAU,EACV,YAAY,EACZ,cAAc,EACd,UAAU,EACV,UAAU,EACV,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,QAAQ,EACb,KAAK,iBAAiB,GACvB,CAAA"}
|
|
@@ -0,0 +1,272 @@
|
|
|
1
|
+
import { cn as e } from "../../lib/utils.js";
|
|
2
|
+
import * as t from "react";
|
|
3
|
+
import { Fragment as n, jsx as r, jsxs as i } from "react/jsx-runtime";
|
|
4
|
+
import { IconBrandBluesky as a, IconBrandFacebookFilled as o, IconBrandLinkedinFilled as s, IconBrandReddit as c, IconBrandThreads as l, IconBrandTiktokFilled as u, IconBrandXFilled as d, IconBrandYoutubeFilled as f, IconMail as p, IconPhone as m } from "@tabler/icons-react";
|
|
5
|
+
//#region src/components/platform-icon/platform-icon.tsx
|
|
6
|
+
var h = [
|
|
7
|
+
"x",
|
|
8
|
+
"threads",
|
|
9
|
+
"instagram",
|
|
10
|
+
"facebook",
|
|
11
|
+
"bluesky",
|
|
12
|
+
"linkedin",
|
|
13
|
+
"tiktok",
|
|
14
|
+
"youtube",
|
|
15
|
+
"google",
|
|
16
|
+
"beehiiv",
|
|
17
|
+
"reddit",
|
|
18
|
+
"gmail",
|
|
19
|
+
"outlook",
|
|
20
|
+
"microsoft",
|
|
21
|
+
"email",
|
|
22
|
+
"phone"
|
|
23
|
+
], g = "var(--foreground, #000000)", _ = {
|
|
24
|
+
x: g,
|
|
25
|
+
threads: g,
|
|
26
|
+
instagram: "#E1306C",
|
|
27
|
+
facebook: "#1877F2",
|
|
28
|
+
bluesky: "#1185FE",
|
|
29
|
+
linkedin: "#0A66C2",
|
|
30
|
+
tiktok: g,
|
|
31
|
+
youtube: "#FF0000",
|
|
32
|
+
google: "#4285F4",
|
|
33
|
+
beehiiv: "#FFC300",
|
|
34
|
+
reddit: "#FF4500",
|
|
35
|
+
gmail: "#EA4335",
|
|
36
|
+
outlook: "#0078D4",
|
|
37
|
+
microsoft: "#00A4EF",
|
|
38
|
+
email: g,
|
|
39
|
+
phone: g
|
|
40
|
+
}, v = {
|
|
41
|
+
x: "X",
|
|
42
|
+
threads: "Threads",
|
|
43
|
+
instagram: "Instagram",
|
|
44
|
+
facebook: "Facebook",
|
|
45
|
+
bluesky: "Bluesky",
|
|
46
|
+
linkedin: "LinkedIn",
|
|
47
|
+
tiktok: "TikTok",
|
|
48
|
+
youtube: "YouTube",
|
|
49
|
+
google: "Google",
|
|
50
|
+
beehiiv: "beehiiv",
|
|
51
|
+
reddit: "Reddit",
|
|
52
|
+
gmail: "Gmail",
|
|
53
|
+
outlook: "Outlook",
|
|
54
|
+
microsoft: "Microsoft",
|
|
55
|
+
email: "Email",
|
|
56
|
+
phone: "Phone"
|
|
57
|
+
};
|
|
58
|
+
function y(e) {
|
|
59
|
+
return e ? {
|
|
60
|
+
role: "img",
|
|
61
|
+
"aria-label": e
|
|
62
|
+
} : { "aria-hidden": !0 };
|
|
63
|
+
}
|
|
64
|
+
function b(e, n, i, a) {
|
|
65
|
+
let o = e, s = t.forwardRef(({ style: e, title: t, ...s }, c) => /* @__PURE__ */ r(o, {
|
|
66
|
+
ref: c,
|
|
67
|
+
"data-platform-mark": i,
|
|
68
|
+
...a ? { fill: a } : {},
|
|
69
|
+
...y(t),
|
|
70
|
+
...s,
|
|
71
|
+
style: {
|
|
72
|
+
...e,
|
|
73
|
+
color: n
|
|
74
|
+
}
|
|
75
|
+
}));
|
|
76
|
+
return s.displayName = `Brand${i}`, s;
|
|
77
|
+
}
|
|
78
|
+
var x = b(d, _.x, "X"), S = b(l, _.threads, "Threads"), C = b(o, _.facebook, "Facebook"), w = b(s, _.linkedin, "Linkedin"), T = b(u, _.tiktok, "Tiktok"), E = b(f, _.youtube, "Youtube"), D = b(c, _.reddit, "Reddit"), O = b(a, _.bluesky, "Bluesky", _.bluesky);
|
|
79
|
+
function k(e, n, i) {
|
|
80
|
+
let a = t.forwardRef(({ size: a = 24, title: o, className: s, style: c, ...l }, u) => {
|
|
81
|
+
let d = `${e.toLowerCase()}${t.useId().replace(/:/g, "")}`;
|
|
82
|
+
return /* @__PURE__ */ r("svg", {
|
|
83
|
+
ref: u,
|
|
84
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
85
|
+
viewBox: n,
|
|
86
|
+
width: a,
|
|
87
|
+
height: a,
|
|
88
|
+
"data-platform-mark": e,
|
|
89
|
+
className: s,
|
|
90
|
+
style: c,
|
|
91
|
+
...y(o),
|
|
92
|
+
...l,
|
|
93
|
+
children: i(d)
|
|
94
|
+
});
|
|
95
|
+
});
|
|
96
|
+
return a.displayName = `Brand${e}`, a;
|
|
97
|
+
}
|
|
98
|
+
var A = k("Instagram", "0 0 24 24", (e) => /* @__PURE__ */ i(n, { children: [/* @__PURE__ */ r("defs", { children: /* @__PURE__ */ i("radialGradient", {
|
|
99
|
+
id: e,
|
|
100
|
+
cx: "0.3",
|
|
101
|
+
cy: "1.07",
|
|
102
|
+
r: "1.2",
|
|
103
|
+
children: [
|
|
104
|
+
/* @__PURE__ */ r("stop", {
|
|
105
|
+
offset: "0",
|
|
106
|
+
stopColor: "#FFD776"
|
|
107
|
+
}),
|
|
108
|
+
/* @__PURE__ */ r("stop", {
|
|
109
|
+
offset: "0.25",
|
|
110
|
+
stopColor: "#F3A554"
|
|
111
|
+
}),
|
|
112
|
+
/* @__PURE__ */ r("stop", {
|
|
113
|
+
offset: "0.5",
|
|
114
|
+
stopColor: "#E1306C"
|
|
115
|
+
}),
|
|
116
|
+
/* @__PURE__ */ r("stop", {
|
|
117
|
+
offset: "0.8",
|
|
118
|
+
stopColor: "#C13584"
|
|
119
|
+
}),
|
|
120
|
+
/* @__PURE__ */ r("stop", {
|
|
121
|
+
offset: "1",
|
|
122
|
+
stopColor: "#833AB4"
|
|
123
|
+
})
|
|
124
|
+
]
|
|
125
|
+
}) }), /* @__PURE__ */ r("path", {
|
|
126
|
+
fill: `url(#${e})`,
|
|
127
|
+
d: "M16 3a5 5 0 0 1 5 5v8a5 5 0 0 1 -5 5h-8a5 5 0 0 1 -5 -5v-8a5 5 0 0 1 5 -5zm-4 5a4 4 0 0 0 -3.995 3.8l-.005 .2a4 4 0 1 0 4 -4m4.5 -1.5a1 1 0 0 0 -.993 .883l-.007 .127a1 1 0 0 0 1.993 .117l.007 -.127a1 1 0 0 0 -1 -1"
|
|
128
|
+
})] })), j = k("Google", "-2 -2 52 52", () => /* @__PURE__ */ i(n, { children: [
|
|
129
|
+
/* @__PURE__ */ r("path", {
|
|
130
|
+
fill: "#EA4335",
|
|
131
|
+
d: "M24 9.5c3.54 0 6.71 1.22 9.21 3.6l6.85-6.85C35.9 2.38 30.47 0 24 0 14.62 0 6.51 5.38 2.56 13.22l7.98 6.19C12.43 13.72 17.74 9.5 24 9.5z"
|
|
132
|
+
}),
|
|
133
|
+
/* @__PURE__ */ r("path", {
|
|
134
|
+
fill: "#4285F4",
|
|
135
|
+
d: "M46.98 24.55c0-1.57-.15-3.09-.38-4.55H24v9.02h12.94c-.58 2.96-2.26 5.48-4.78 7.18l7.73 6c4.51-4.18 7.09-10.36 7.09-17.65z"
|
|
136
|
+
}),
|
|
137
|
+
/* @__PURE__ */ r("path", {
|
|
138
|
+
fill: "#FBBC05",
|
|
139
|
+
d: "M10.53 28.59c-.48-1.45-.76-2.99-.76-4.59s.27-3.14.76-4.59l-7.98-6.19C.92 16.46 0 20.12 0 24c0 3.88.92 7.54 2.56 10.78l7.97-6.19z"
|
|
140
|
+
}),
|
|
141
|
+
/* @__PURE__ */ r("path", {
|
|
142
|
+
fill: "#34A853",
|
|
143
|
+
d: "M24 48c6.48 0 11.93-2.13 15.89-5.81l-7.73-6c-2.15 1.45-4.92 2.3-8.16 2.3-6.26 0-11.57-4.22-13.47-9.91l-7.98 6.19C6.51 42.62 14.62 48 24 48z"
|
|
144
|
+
})
|
|
145
|
+
] })), M = k("Beehiiv", "0 0 24 24", () => /* @__PURE__ */ i(n, { children: [/* @__PURE__ */ r("rect", {
|
|
146
|
+
x: "2",
|
|
147
|
+
y: "2",
|
|
148
|
+
width: "20",
|
|
149
|
+
height: "20",
|
|
150
|
+
rx: "5",
|
|
151
|
+
fill: _.beehiiv
|
|
152
|
+
}), /* @__PURE__ */ r("path", {
|
|
153
|
+
fill: "#111111",
|
|
154
|
+
d: "M12 6.5l4.76 2.75v5.5L12 17.5l-4.76-2.75v-5.5z"
|
|
155
|
+
})] })), N = k("Gmail", "-2 -7 56 56", () => /* @__PURE__ */ i(n, { children: [
|
|
156
|
+
/* @__PURE__ */ r("path", {
|
|
157
|
+
fill: "#4285F4",
|
|
158
|
+
d: "M3.5 42h8V22.6L0 13.9v24.6C0 40.4 1.6 42 3.5 42z"
|
|
159
|
+
}),
|
|
160
|
+
/* @__PURE__ */ r("path", {
|
|
161
|
+
fill: "#34A853",
|
|
162
|
+
d: "M40.5 42h8c1.9 0 3.5-1.6 3.5-3.5V13.9l-11.5 8.6z"
|
|
163
|
+
}),
|
|
164
|
+
/* @__PURE__ */ r("path", {
|
|
165
|
+
fill: "#FBBC04",
|
|
166
|
+
d: "M40.5 7.6v14.9L52 13.9V9.3c0-4.3-4.9-6.7-8.3-4.2z"
|
|
167
|
+
}),
|
|
168
|
+
/* @__PURE__ */ r("path", {
|
|
169
|
+
fill: "#EA4335",
|
|
170
|
+
d: "M11.5 22.6V7.6L26 18.5l14.5-10.9v14.9L26 33.4z"
|
|
171
|
+
}),
|
|
172
|
+
/* @__PURE__ */ r("path", {
|
|
173
|
+
fill: "#C5221F",
|
|
174
|
+
d: "M0 9.3v4.6l11.5 8.6V7.6L8.3 5.2C4.9 2.6 0 5.1 0 9.3z"
|
|
175
|
+
})
|
|
176
|
+
] })), P = k("Outlook", "0 0 24 24", () => /* @__PURE__ */ i(n, { children: [
|
|
177
|
+
/* @__PURE__ */ r("rect", {
|
|
178
|
+
x: "8",
|
|
179
|
+
y: "5",
|
|
180
|
+
width: "14",
|
|
181
|
+
height: "14",
|
|
182
|
+
rx: "2",
|
|
183
|
+
fill: "#28A8EA"
|
|
184
|
+
}),
|
|
185
|
+
/* @__PURE__ */ r("path", {
|
|
186
|
+
d: "M8.5 8.5l6.75 4.5 6.25-4.5",
|
|
187
|
+
fill: "none",
|
|
188
|
+
stroke: "#FFFFFF",
|
|
189
|
+
strokeWidth: "1.2",
|
|
190
|
+
strokeLinejoin: "round"
|
|
191
|
+
}),
|
|
192
|
+
/* @__PURE__ */ r("rect", {
|
|
193
|
+
x: "2",
|
|
194
|
+
y: "3",
|
|
195
|
+
width: "12",
|
|
196
|
+
height: "18",
|
|
197
|
+
rx: "2",
|
|
198
|
+
fill: _.outlook
|
|
199
|
+
}),
|
|
200
|
+
/* @__PURE__ */ r("ellipse", {
|
|
201
|
+
cx: "8",
|
|
202
|
+
cy: "12",
|
|
203
|
+
rx: "2.9",
|
|
204
|
+
ry: "3.6",
|
|
205
|
+
fill: "none",
|
|
206
|
+
stroke: "#FFFFFF",
|
|
207
|
+
strokeWidth: "1.8"
|
|
208
|
+
})
|
|
209
|
+
] })), F = k("Microsoft", "0 0 24 24", () => /* @__PURE__ */ i(n, { children: [
|
|
210
|
+
/* @__PURE__ */ r("rect", {
|
|
211
|
+
x: "2.5",
|
|
212
|
+
y: "2.5",
|
|
213
|
+
width: "9",
|
|
214
|
+
height: "9",
|
|
215
|
+
fill: "#F25022"
|
|
216
|
+
}),
|
|
217
|
+
/* @__PURE__ */ r("rect", {
|
|
218
|
+
x: "12.5",
|
|
219
|
+
y: "2.5",
|
|
220
|
+
width: "9",
|
|
221
|
+
height: "9",
|
|
222
|
+
fill: "#7FBA00"
|
|
223
|
+
}),
|
|
224
|
+
/* @__PURE__ */ r("rect", {
|
|
225
|
+
x: "2.5",
|
|
226
|
+
y: "12.5",
|
|
227
|
+
width: "9",
|
|
228
|
+
height: "9",
|
|
229
|
+
fill: "#00A4EF"
|
|
230
|
+
}),
|
|
231
|
+
/* @__PURE__ */ r("rect", {
|
|
232
|
+
x: "12.5",
|
|
233
|
+
y: "12.5",
|
|
234
|
+
width: "9",
|
|
235
|
+
height: "9",
|
|
236
|
+
fill: "#FFB900"
|
|
237
|
+
})
|
|
238
|
+
] })), I = b(p, _.email, "Email"), L = b(m, _.phone, "Phone"), R = {
|
|
239
|
+
x,
|
|
240
|
+
threads: S,
|
|
241
|
+
instagram: A,
|
|
242
|
+
facebook: C,
|
|
243
|
+
bluesky: O,
|
|
244
|
+
linkedin: w,
|
|
245
|
+
tiktok: T,
|
|
246
|
+
youtube: E,
|
|
247
|
+
google: j,
|
|
248
|
+
beehiiv: M,
|
|
249
|
+
reddit: D,
|
|
250
|
+
gmail: N,
|
|
251
|
+
outlook: P,
|
|
252
|
+
microsoft: F,
|
|
253
|
+
email: I,
|
|
254
|
+
phone: L
|
|
255
|
+
};
|
|
256
|
+
function z({ platform: t, size: n = 16, className: i, style: a, ...o }) {
|
|
257
|
+
let s = R[t];
|
|
258
|
+
return /* @__PURE__ */ r(s, {
|
|
259
|
+
"data-slot": "platform-icon",
|
|
260
|
+
"data-platform": t,
|
|
261
|
+
size: n,
|
|
262
|
+
className: e("shrink-0", i),
|
|
263
|
+
style: {
|
|
264
|
+
width: n,
|
|
265
|
+
height: n,
|
|
266
|
+
...a
|
|
267
|
+
},
|
|
268
|
+
...o
|
|
269
|
+
});
|
|
270
|
+
}
|
|
271
|
+
//#endregion
|
|
272
|
+
export { M as BrandBeehiiv, O as BrandBluesky, I as BrandEmail, C as BrandFacebook, N as BrandGmail, j as BrandGoogle, A as BrandInstagram, w as BrandLinkedin, F as BrandMicrosoft, P as BrandOutlook, L as BrandPhone, D as BrandReddit, S as BrandThreads, T as BrandTiktok, x as BrandX, E as BrandYoutube, h as PLATFORMS, _ as PLATFORM_COLOR, R as PLATFORM_ICON, v as PLATFORM_LABEL, z as PlatformIcon };
|
|
@@ -3,8 +3,8 @@ import { cn as e } from "../../lib/utils.js";
|
|
|
3
3
|
import { Button as t } from "../button/button.js";
|
|
4
4
|
import { Separator as n } from "../separator/separator.js";
|
|
5
5
|
import { Input as r } from "../input/input.js";
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
6
|
+
import { useIsMobile as i } from "../../hooks/use-mobile.js";
|
|
7
|
+
import { Sheet as a, SheetContent as o, SheetDescription as s, SheetHeader as c, SheetTitle as l } from "../sheet/sheet.js";
|
|
8
8
|
import { Skeleton as u } from "../skeleton/skeleton.js";
|
|
9
9
|
import { Tooltip as d, TooltipContent as f, TooltipTrigger as p } from "../tooltip/tooltip.js";
|
|
10
10
|
import * as m from "react";
|
|
@@ -20,12 +20,12 @@ function O() {
|
|
|
20
20
|
if (!e) throw Error("useSidebar must be used within a SidebarProvider.");
|
|
21
21
|
return e;
|
|
22
22
|
}
|
|
23
|
-
function k({ defaultOpen: t = !0, open: n, onOpenChange: r, className:
|
|
24
|
-
let
|
|
23
|
+
function k({ defaultOpen: t = !0, open: n, onOpenChange: r, className: a, style: o, children: s, ...c }) {
|
|
24
|
+
let l = i(), [u, d] = m.useState(!1), [f, p] = m.useState(t), h = n ?? f, _ = m.useCallback((e) => {
|
|
25
25
|
let t = typeof e == "function" ? e(h) : e;
|
|
26
26
|
r ? r(t) : p(t), document.cookie = `${x}=${t}; path=/; max-age=${S}`;
|
|
27
|
-
}, [r, h]), v = m.useCallback(() =>
|
|
28
|
-
|
|
27
|
+
}, [r, h]), v = m.useCallback(() => l ? d((e) => !e) : _((e) => !e), [
|
|
28
|
+
l,
|
|
29
29
|
_,
|
|
30
30
|
d
|
|
31
31
|
]);
|
|
@@ -39,7 +39,7 @@ function k({ defaultOpen: t = !0, open: n, onOpenChange: r, className: i, style:
|
|
|
39
39
|
state: y,
|
|
40
40
|
open: h,
|
|
41
41
|
setOpen: _,
|
|
42
|
-
isMobile:
|
|
42
|
+
isMobile: l,
|
|
43
43
|
openMobile: u,
|
|
44
44
|
setOpenMobile: d,
|
|
45
45
|
toggleSidebar: v
|
|
@@ -47,7 +47,7 @@ function k({ defaultOpen: t = !0, open: n, onOpenChange: r, className: i, style:
|
|
|
47
47
|
y,
|
|
48
48
|
h,
|
|
49
49
|
_,
|
|
50
|
-
|
|
50
|
+
l,
|
|
51
51
|
u,
|
|
52
52
|
d,
|
|
53
53
|
v
|
|
@@ -59,26 +59,26 @@ function k({ defaultOpen: t = !0, open: n, onOpenChange: r, className: i, style:
|
|
|
59
59
|
style: {
|
|
60
60
|
"--sidebar-width": C,
|
|
61
61
|
"--sidebar-width-icon": T,
|
|
62
|
-
...
|
|
62
|
+
...o
|
|
63
63
|
},
|
|
64
|
-
className: e("group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar",
|
|
65
|
-
...
|
|
66
|
-
children:
|
|
64
|
+
className: e("group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar", a),
|
|
65
|
+
...c,
|
|
66
|
+
children: s
|
|
67
67
|
})
|
|
68
68
|
});
|
|
69
69
|
}
|
|
70
|
-
function A({ side: t = "left", variant: n = "sidebar", collapsible: r = "offcanvas", className:
|
|
70
|
+
function A({ side: t = "left", variant: n = "sidebar", collapsible: r = "offcanvas", className: i, children: u, dir: d, ...f }) {
|
|
71
71
|
let { isMobile: p, state: m, openMobile: h, setOpenMobile: v } = O();
|
|
72
72
|
return r === "none" ? /* @__PURE__ */ g("div", {
|
|
73
73
|
"data-slot": "sidebar",
|
|
74
|
-
className: e("flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground",
|
|
74
|
+
className: e("flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground", i),
|
|
75
75
|
...f,
|
|
76
76
|
children: u
|
|
77
|
-
}) : p ? /* @__PURE__ */ g(
|
|
77
|
+
}) : p ? /* @__PURE__ */ g(a, {
|
|
78
78
|
open: h,
|
|
79
79
|
onOpenChange: v,
|
|
80
80
|
...f,
|
|
81
|
-
children: /* @__PURE__ */ _(
|
|
81
|
+
children: /* @__PURE__ */ _(o, {
|
|
82
82
|
dir: d,
|
|
83
83
|
"data-sidebar": "sidebar",
|
|
84
84
|
"data-slot": "sidebar",
|
|
@@ -86,9 +86,9 @@ function A({ side: t = "left", variant: n = "sidebar", collapsible: r = "offcanv
|
|
|
86
86
|
className: "w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden",
|
|
87
87
|
style: { "--sidebar-width": w },
|
|
88
88
|
side: t,
|
|
89
|
-
children: [/* @__PURE__ */ _(
|
|
89
|
+
children: [/* @__PURE__ */ _(c, {
|
|
90
90
|
className: "sr-only",
|
|
91
|
-
children: [/* @__PURE__ */ g(
|
|
91
|
+
children: [/* @__PURE__ */ g(l, { children: "Sidebar" }), /* @__PURE__ */ g(s, { children: "Displays the mobile sidebar." })]
|
|
92
92
|
}), /* @__PURE__ */ g("div", {
|
|
93
93
|
className: "flex h-full w-full flex-col",
|
|
94
94
|
children: u
|
|
@@ -107,7 +107,7 @@ function A({ side: t = "left", variant: n = "sidebar", collapsible: r = "offcanv
|
|
|
107
107
|
}), /* @__PURE__ */ g("div", {
|
|
108
108
|
"data-slot": "sidebar-container",
|
|
109
109
|
"data-side": t,
|
|
110
|
-
className: e("fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear data-[side=left]:left-0 data-[side=left]:group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)] data-[side=right]:right-0 data-[side=right]:group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)] md:flex", n === "floating" || n === "inset" ? "p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l",
|
|
110
|
+
className: e("fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear data-[side=left]:left-0 data-[side=left]:group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)] data-[side=right]:right-0 data-[side=right]:group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)] md:flex", n === "floating" || n === "inset" ? "p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l", i),
|
|
111
111
|
...f,
|
|
112
112
|
children: /* @__PURE__ */ g("div", {
|
|
113
113
|
"data-sidebar": "sidebar",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/signal-strip/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
export interface SignalDotsProps extends Omit<React.ComponentProps<'span'>, 'children'> {
|
|
3
|
+
/** How many dots are filled. Clamped to 0 through `max`. */
|
|
4
|
+
value: number;
|
|
5
|
+
/** How many dots the strip has. */
|
|
6
|
+
max?: number;
|
|
7
|
+
}
|
|
8
|
+
/** A short run of dots, `value` of `max` filled: a score read at a glance. */
|
|
9
|
+
declare function SignalDots({ value, max, className, 'aria-label': ariaLabel, ...props }: SignalDotsProps): React.JSX.Element;
|
|
10
|
+
export interface SignalStripItem {
|
|
11
|
+
/** The signal's name, such as "Proven". */
|
|
12
|
+
label: React.ReactNode;
|
|
13
|
+
/** Filled dots. Leave out, or pass null, for a signal that has no score. */
|
|
14
|
+
value?: number | null;
|
|
15
|
+
max?: number;
|
|
16
|
+
/** The short reading beside the dots, such as "Strong". */
|
|
17
|
+
note?: React.ReactNode;
|
|
18
|
+
/** The line behind the reading. Shown only in the `detail` layout. */
|
|
19
|
+
description?: React.ReactNode;
|
|
20
|
+
/** Accessible name for the dots when "n of max" is not enough. */
|
|
21
|
+
dotsLabel?: string;
|
|
22
|
+
}
|
|
23
|
+
export interface SignalStripProps extends Omit<React.ComponentProps<'dl'>, 'children'> {
|
|
24
|
+
items: readonly SignalStripItem[];
|
|
25
|
+
/**
|
|
26
|
+
* `inline` wraps the signals in one line; `stacked` aligns them as rows of
|
|
27
|
+
* label, dots and note; `detail` adds each signal's description under it.
|
|
28
|
+
*/
|
|
29
|
+
layout?: 'inline' | 'stacked' | 'detail';
|
|
30
|
+
}
|
|
31
|
+
/** A few named signals, each a label, its dots and a short note. */
|
|
32
|
+
declare function SignalStrip({ items, layout, className, ...props }: SignalStripProps): React.JSX.Element;
|
|
33
|
+
export { SignalDots, SignalStrip };
|
|
34
|
+
//# sourceMappingURL=signal-strip.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"signal-strip.d.ts","sourceRoot":"","sources":["../../../src/components/signal-strip/signal-strip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAC3C,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,EAC5B,UAAU,CACX;IACC,4DAA4D;IAC5D,KAAK,EAAE,MAAM,CAAA;IACb,mCAAmC;IACnC,GAAG,CAAC,EAAE,MAAM,CAAA;CACb;AAED,8EAA8E;AAC9E,iBAAS,UAAU,CAAC,EAClB,KAAK,EACL,GAAO,EACP,SAAS,EACT,YAAY,EAAE,SAAS,EACvB,GAAG,KAAK,EACT,EAAE,eAAe,qBAuBjB;AAED,MAAM,WAAW,eAAe;IAC9B,2CAA2C;IAC3C,KAAK,EAAE,KAAK,CAAC,SAAS,CAAA;IACtB,4EAA4E;IAC5E,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,2DAA2D;IAC3D,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtB,sEAAsE;IACtE,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAC5C,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,EAC1B,UAAU,CACX;IACC,KAAK,EAAE,SAAS,eAAe,EAAE,CAAA;IACjC;;;OAGG;IACH,MAAM,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAA;CACzC;AAED,oEAAoE;AACpE,iBAAS,WAAW,CAAC,EACnB,KAAK,EACL,MAAiB,EACjB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,gBAAgB,qBA6FlB;AAED,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,CAAA"}
|