@orangecheck/design 0.22.0 → 0.24.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/chrome.d.mts +25 -1
- package/dist/chrome.d.ts +25 -1
- package/dist/chrome.js +125 -0
- package/dist/chrome.js.map +1 -1
- package/dist/chrome.mjs +125 -1
- package/dist/chrome.mjs.map +1 -1
- package/dist/components.d.mts +2 -2
- package/dist/components.d.ts +2 -2
- package/dist/components.js +144 -5
- package/dist/components.js.map +1 -1
- package/dist/components.mjs +143 -6
- package/dist/components.mjs.map +1 -1
- package/dist/composites.d.mts +11 -1
- package/dist/composites.d.ts +11 -1
- package/dist/composites.js +19 -5
- package/dist/composites.js.map +1 -1
- package/dist/composites.mjs +19 -6
- package/dist/composites.mjs.map +1 -1
- package/dist/index.d.mts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +144 -5
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +143 -6
- package/dist/index.mjs.map +1 -1
- package/dist/styles/themes/ember.css +75 -0
- package/package.json +1 -1
package/dist/components.mjs
CHANGED
|
@@ -153,11 +153,11 @@ var COL_CLASS = {
|
|
|
153
153
|
4: "md:grid-cols-2 lg:grid-cols-4"
|
|
154
154
|
};
|
|
155
155
|
function StatGrid({ items, columns = 3, className = "" }) {
|
|
156
|
-
return /* @__PURE__ */ jsx("div", { className: `bg-border grid gap-px border ${COL_CLASS[columns]} ${className}`, children: items.map((it, i) => /* @__PURE__ */ jsx(Tile, { item: it }, `${it.label}-${i}`)) });
|
|
156
|
+
return /* @__PURE__ */ jsx("div", { className: `oc-stat-grid bg-border grid gap-px border ${COL_CLASS[columns]} ${className}`, children: items.map((it, i) => /* @__PURE__ */ jsx(Tile, { item: it }, `${it.label}-${i}`)) });
|
|
157
157
|
}
|
|
158
158
|
function Tile({ item }) {
|
|
159
159
|
const tone = item.tone ?? (item.accent ? "primary" : "default");
|
|
160
|
-
return /* @__PURE__ */ jsxs("div", { className: "bg-background p-5", children: [
|
|
160
|
+
return /* @__PURE__ */ jsxs("div", { className: "oc-stat-tile bg-background p-5", children: [
|
|
161
161
|
/* @__PURE__ */ jsx("div", { className: "text-muted-foreground/80 font-mono text-[10px] tracking-widest uppercase", children: item.label }),
|
|
162
162
|
/* @__PURE__ */ jsx(
|
|
163
163
|
"div",
|
|
@@ -210,7 +210,7 @@ function StatBlock({ label, value, sub, delta, tone = "default", className }) {
|
|
|
210
210
|
] });
|
|
211
211
|
}
|
|
212
212
|
function StatCard({ pad = "default", className, ...stat }) {
|
|
213
|
-
return /* @__PURE__ */ jsx("div", { className: cn("border bg-card", pad === "sm" ? "p-3 md:p-4" : "p-5", className), children: /* @__PURE__ */ jsx(StatBlock, { ...stat }) });
|
|
213
|
+
return /* @__PURE__ */ jsx("div", { className: cn("oc-stat-card border bg-card", pad === "sm" ? "p-3 md:p-4" : "p-5", className), children: /* @__PURE__ */ jsx(StatBlock, { ...stat }) });
|
|
214
214
|
}
|
|
215
215
|
var FRAME = {
|
|
216
216
|
info: "border-primary/30 bg-primary/5",
|
|
@@ -247,7 +247,7 @@ function DefinitionList({ items, className }) {
|
|
|
247
247
|
"dl",
|
|
248
248
|
{
|
|
249
249
|
className: cn(
|
|
250
|
-
"grid gap-x-5 gap-y-2 text-sm sm:grid-cols-[auto_1fr] sm:items-baseline",
|
|
250
|
+
"oc-deflist grid gap-x-5 gap-y-2 text-sm sm:grid-cols-[auto_1fr] sm:items-baseline",
|
|
251
251
|
className
|
|
252
252
|
),
|
|
253
253
|
children: items.map((item, i) => /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
@@ -263,7 +263,7 @@ function DataRow({ children, meta, action, as, className }) {
|
|
|
263
263
|
Tag,
|
|
264
264
|
{
|
|
265
265
|
className: cn(
|
|
266
|
-
"flex flex-col gap-1 py-3 sm:flex-row sm:items-baseline sm:justify-between sm:gap-4",
|
|
266
|
+
"oc-data-row flex flex-col gap-1 py-3 sm:flex-row sm:items-baseline sm:justify-between sm:gap-4",
|
|
267
267
|
className
|
|
268
268
|
),
|
|
269
269
|
children: [
|
|
@@ -276,6 +276,19 @@ function DataRow({ children, meta, action, as, className }) {
|
|
|
276
276
|
}
|
|
277
277
|
);
|
|
278
278
|
}
|
|
279
|
+
function Panel({ label, title, action, flush, className, children }) {
|
|
280
|
+
const hasHeader = label || title || action;
|
|
281
|
+
return /* @__PURE__ */ jsxs("section", { className: cn("oc-panel py-8", !flush && "border-t", className), children: [
|
|
282
|
+
hasHeader && /* @__PURE__ */ jsxs("div", { className: "mb-4 flex items-start justify-between gap-3", children: [
|
|
283
|
+
/* @__PURE__ */ jsxs("div", { className: "min-w-0", children: [
|
|
284
|
+
label && /* @__PURE__ */ jsx("div", { className: "label-mono text-primary mb-1", children: label }),
|
|
285
|
+
title && /* @__PURE__ */ jsx("h2", { className: "font-display text-lg font-bold tracking-tight", children: title })
|
|
286
|
+
] }),
|
|
287
|
+
action && /* @__PURE__ */ jsx("div", { className: "shrink-0", children: action })
|
|
288
|
+
] }),
|
|
289
|
+
children
|
|
290
|
+
] });
|
|
291
|
+
}
|
|
279
292
|
function TwoToneHeading({
|
|
280
293
|
lead,
|
|
281
294
|
muted,
|
|
@@ -2947,7 +2960,131 @@ function OcAppBar({
|
|
|
2947
2960
|
}
|
|
2948
2961
|
);
|
|
2949
2962
|
}
|
|
2963
|
+
var GRID = {
|
|
2964
|
+
1: "md:grid-cols-[1.2fr_1fr]",
|
|
2965
|
+
2: "md:grid-cols-[1.2fr_1fr_1fr]",
|
|
2966
|
+
3: "md:grid-cols-[1.2fr_1fr_1fr_1fr]",
|
|
2967
|
+
4: "md:grid-cols-[1.2fr_1fr_1fr_1fr_1fr]",
|
|
2968
|
+
5: "md:grid-cols-[1.2fr_1fr_1fr_1fr_1fr_1fr]"
|
|
2969
|
+
};
|
|
2970
|
+
var LINK_CLS = "text-muted-foreground hover:text-foreground font-mono text-xs tracking-wide lowercase transition-colors";
|
|
2971
|
+
function FooterLinkItem({ link }) {
|
|
2972
|
+
if (link.external) {
|
|
2973
|
+
return /* @__PURE__ */ jsxs("a", { href: link.href, target: "_blank", rel: "noreferrer", className: LINK_CLS, children: [
|
|
2974
|
+
"> ",
|
|
2975
|
+
link.label,
|
|
2976
|
+
" \u2197"
|
|
2977
|
+
] });
|
|
2978
|
+
}
|
|
2979
|
+
return /* @__PURE__ */ jsxs(Link6, { href: link.href, className: LINK_CLS, children: [
|
|
2980
|
+
"> ",
|
|
2981
|
+
link.label
|
|
2982
|
+
] });
|
|
2983
|
+
}
|
|
2984
|
+
function FooterColumnView({ column }) {
|
|
2985
|
+
return /* @__PURE__ */ jsxs("div", { children: [
|
|
2986
|
+
/* @__PURE__ */ jsx("div", { className: "label-mono text-primary mb-3", children: column.label }),
|
|
2987
|
+
/* @__PURE__ */ jsx("ul", { className: "space-y-2", children: column.links.map((link) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(FooterLinkItem, { link }) }, `${column.label}:${link.href}`)) })
|
|
2988
|
+
] });
|
|
2989
|
+
}
|
|
2990
|
+
function familyColumn(category, label) {
|
|
2991
|
+
return {
|
|
2992
|
+
label,
|
|
2993
|
+
links: FAMILY_PROPERTIES.filter((p) => p.category === category).map(
|
|
2994
|
+
(p) => ({
|
|
2995
|
+
href: p.origin,
|
|
2996
|
+
label: p.label,
|
|
2997
|
+
external: true
|
|
2998
|
+
})
|
|
2999
|
+
)
|
|
3000
|
+
};
|
|
3001
|
+
}
|
|
3002
|
+
function OcFamilyFooter({
|
|
3003
|
+
brand,
|
|
3004
|
+
columns = [],
|
|
3005
|
+
family,
|
|
3006
|
+
legalBase = "https://ochk.io",
|
|
3007
|
+
className
|
|
3008
|
+
}) {
|
|
3009
|
+
const familyCols = [];
|
|
3010
|
+
if (family === "products" || family === "both") {
|
|
3011
|
+
familyCols.push(familyColumn("product", "\xA7 products"));
|
|
3012
|
+
}
|
|
3013
|
+
if (family === "protocols" || family === "both") {
|
|
3014
|
+
familyCols.push(familyColumn("protocol", "\xA7 protocols"));
|
|
3015
|
+
}
|
|
3016
|
+
const allColumns = [...familyCols, ...columns];
|
|
3017
|
+
const grid = GRID[allColumns.length] ?? GRID[3];
|
|
3018
|
+
const year = (/* @__PURE__ */ new Date()).getFullYear();
|
|
3019
|
+
const legal = (path) => `${legalBase}${path}`;
|
|
3020
|
+
return /* @__PURE__ */ jsx("footer", { className: cn("border-t", className), children: /* @__PURE__ */ jsxs("div", { className: "container py-10 sm:py-12 md:py-16", children: [
|
|
3021
|
+
/* @__PURE__ */ jsxs("div", { className: cn("grid gap-8 sm:grid-cols-2 sm:gap-10", grid), children: [
|
|
3022
|
+
/* @__PURE__ */ jsxs("div", { children: [
|
|
3023
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
3024
|
+
brand.mark,
|
|
3025
|
+
/* @__PURE__ */ jsx("span", { className: "font-display text-sm font-bold tracking-tight", children: brand.wordmark })
|
|
3026
|
+
] }),
|
|
3027
|
+
/* @__PURE__ */ jsx("div", { className: "text-muted-foreground mt-3 max-w-[34ch] text-sm leading-relaxed", children: brand.tagline }),
|
|
3028
|
+
brand.meta && /* @__PURE__ */ jsx("div", { className: "mt-4", children: brand.meta })
|
|
3029
|
+
] }),
|
|
3030
|
+
allColumns.map((column) => /* @__PURE__ */ jsx(FooterColumnView, { column }, column.label))
|
|
3031
|
+
] }),
|
|
3032
|
+
/* @__PURE__ */ jsxs("div", { className: "mt-10 flex flex-col items-start justify-between gap-3 border-t pt-6 font-mono text-[11px] tracking-widest uppercase sm:flex-row sm:items-center", children: [
|
|
3033
|
+
/* @__PURE__ */ jsxs("span", { className: "text-muted-foreground", children: [
|
|
3034
|
+
"\xA9 ",
|
|
3035
|
+
year,
|
|
3036
|
+
" orangecheck \xB7 mit + cc-by-4.0"
|
|
3037
|
+
] }),
|
|
3038
|
+
/* @__PURE__ */ jsxs("div", { className: "text-muted-foreground/80 flex flex-wrap items-center gap-x-4 gap-y-1", children: [
|
|
3039
|
+
/* @__PURE__ */ jsx(
|
|
3040
|
+
"a",
|
|
3041
|
+
{
|
|
3042
|
+
href: legal("/privacy"),
|
|
3043
|
+
className: "hover:text-foreground transition-colors",
|
|
3044
|
+
children: "privacy"
|
|
3045
|
+
}
|
|
3046
|
+
),
|
|
3047
|
+
/* @__PURE__ */ jsx(
|
|
3048
|
+
"a",
|
|
3049
|
+
{
|
|
3050
|
+
href: legal("/terms"),
|
|
3051
|
+
className: "hover:text-foreground transition-colors",
|
|
3052
|
+
children: "terms"
|
|
3053
|
+
}
|
|
3054
|
+
),
|
|
3055
|
+
/* @__PURE__ */ jsx(
|
|
3056
|
+
"a",
|
|
3057
|
+
{
|
|
3058
|
+
href: legal("/security"),
|
|
3059
|
+
className: "hover:text-foreground transition-colors",
|
|
3060
|
+
children: "security"
|
|
3061
|
+
}
|
|
3062
|
+
),
|
|
3063
|
+
/* @__PURE__ */ jsx(
|
|
3064
|
+
"a",
|
|
3065
|
+
{
|
|
3066
|
+
href: legal("/trademark"),
|
|
3067
|
+
className: "hover:text-foreground transition-colors",
|
|
3068
|
+
children: "trademarks"
|
|
3069
|
+
}
|
|
3070
|
+
),
|
|
3071
|
+
/* @__PURE__ */ jsx(
|
|
3072
|
+
"a",
|
|
3073
|
+
{
|
|
3074
|
+
href: legal("/contact"),
|
|
3075
|
+
className: "hover:text-foreground transition-colors",
|
|
3076
|
+
children: "contact"
|
|
3077
|
+
}
|
|
3078
|
+
)
|
|
3079
|
+
] }),
|
|
3080
|
+
/* @__PURE__ */ jsxs("span", { className: "text-muted-foreground inline-flex items-center gap-1.5", children: [
|
|
3081
|
+
/* @__PURE__ */ jsx("span", { className: "text-primary text-[13px] leading-none", children: "\u20BF" }),
|
|
3082
|
+
/* @__PURE__ */ jsx("span", { children: "built with bitcoin" })
|
|
3083
|
+
] })
|
|
3084
|
+
] })
|
|
3085
|
+
] }) });
|
|
3086
|
+
}
|
|
2950
3087
|
|
|
2951
|
-
export { AccentList, AccentNote, AppShell, BrandBand, Callout, CheckList, ComparisonTable, DataRow, DefinitionList, EcosystemSwitcher, EmailCapture, EmptyState, FAMILY_PROPERTIES, Faq, FeatureCard, HelpHint, LayoutSubHeader, MarketingHeading, NumberedStep, OcAccountMenu, OcAccountMenuView, OcAppBar, OcDashboardHub, OcDashboardShell, OcLogoDropdown, OcPrimaryNav, SITE_STATE_LABEL, Section, SectionHeader, StatCard, StatGrid, StatTile, StepList, TwoToneHeading, VerifiedChip, findFamilyProperty };
|
|
3088
|
+
export { AccentList, AccentNote, AppShell, BrandBand, Callout, CheckList, ComparisonTable, DataRow, DefinitionList, EcosystemSwitcher, EmailCapture, EmptyState, FAMILY_PROPERTIES, Faq, FeatureCard, HelpHint, LayoutSubHeader, MarketingHeading, NumberedStep, OcAccountMenu, OcAccountMenuView, OcAppBar, OcDashboardHub, OcDashboardShell, OcFamilyFooter, OcLogoDropdown, OcPrimaryNav, Panel, SITE_STATE_LABEL, Section, SectionHeader, StatCard, StatGrid, StatTile, StepList, TwoToneHeading, VerifiedChip, findFamilyProperty };
|
|
2952
3089
|
//# sourceMappingURL=components.mjs.map
|
|
2953
3090
|
//# sourceMappingURL=components.mjs.map
|