@burdenoff/website-sdk 2026.924.8 → 2026.924.9
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/explore.js +56 -4
- package/dist/components/explore.js.map +1 -1
- package/dist/components/explore.mjs +56 -4
- package/dist/components/explore.mjs.map +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +56 -4
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +56 -4
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -770,7 +770,7 @@ declare function formatAnswerDate(value: string, locale: ExploreLocale): string;
|
|
|
770
770
|
|
|
771
771
|
declare const buttonVariants: (props?: ({
|
|
772
772
|
variant?: "link" | "default" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
|
|
773
|
-
size?: "
|
|
773
|
+
size?: "default" | "sm" | "lg" | "icon" | null | undefined;
|
|
774
774
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
775
775
|
interface ButtonProps extends react.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
|
|
776
776
|
asChild?: boolean;
|
package/dist/index.d.ts
CHANGED
|
@@ -770,7 +770,7 @@ declare function formatAnswerDate(value: string, locale: ExploreLocale): string;
|
|
|
770
770
|
|
|
771
771
|
declare const buttonVariants: (props?: ({
|
|
772
772
|
variant?: "link" | "default" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
|
|
773
|
-
size?: "
|
|
773
|
+
size?: "default" | "sm" | "lg" | "icon" | null | undefined;
|
|
774
774
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
775
775
|
interface ButtonProps extends react.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
|
|
776
776
|
asChild?: boolean;
|
package/dist/index.js
CHANGED
|
@@ -10707,6 +10707,9 @@ function toPayload(staged) {
|
|
|
10707
10707
|
}));
|
|
10708
10708
|
}
|
|
10709
10709
|
var SHORT_VIEWPORT_PX = 420;
|
|
10710
|
+
var WELCOME_FIT_MIN_WIDTH_PX = 640;
|
|
10711
|
+
var WELCOME_FIT_STEP_PX = [700, 549, 505, 422];
|
|
10712
|
+
var toRem = (px) => `${px / 16}rem`;
|
|
10710
10713
|
var EXPLORE_CSS = `
|
|
10711
10714
|
@keyframes boff-explore-pulse {
|
|
10712
10715
|
0%, 80%, 100% { opacity: 0.25; transform: translateY(0); }
|
|
@@ -10917,6 +10920,50 @@ var EXPLORE_CSS = `
|
|
|
10917
10920
|
}
|
|
10918
10921
|
}
|
|
10919
10922
|
|
|
10923
|
+
/* ---- Welcome fit ----------------------------------------------------------------------
|
|
10924
|
+
The ladder is documented at WELCOME_FIT_STEP_PX. The pane becomes a query container only
|
|
10925
|
+
in viewport mode and above the short-viewport threshold, because size containment sizes
|
|
10926
|
+
an element as if it had no content. That is safe exactly while the pane's height comes
|
|
10927
|
+
from its flex parent. In \`auto\` mode, and in the short-viewport fallback above, the pane
|
|
10928
|
+
grows WITH its content \u2014 and containment there would collapse it to zero height.
|
|
10929
|
+
|
|
10930
|
+
Selectors are two classes deep on purpose. The host sites' Tailwind puts \`py-5\`, \`mt-4\`
|
|
10931
|
+
and \`aspect-[2/1]\` on these same elements; unlayered SDK CSS already outranks a v4
|
|
10932
|
+
\`@layer utilities\` rule, and the extra class makes it outrank a v3 one too, whichever
|
|
10933
|
+
stylesheet happens to load last.
|
|
10934
|
+
|
|
10935
|
+
Nothing here hides the concept strip, and nothing here hides content the page does not
|
|
10936
|
+
also say elsewhere. Below the last step the pane scrolls, so every control stays
|
|
10937
|
+
reachable at every zoom level. */
|
|
10938
|
+
@media (min-height: ${SHORT_VIEWPORT_PX + 1}px) {
|
|
10939
|
+
.boff-explore-viewport .boff-explore-scroll {
|
|
10940
|
+
container: boff-explore-pane / size;
|
|
10941
|
+
}
|
|
10942
|
+
}
|
|
10943
|
+
@container boff-explore-pane (min-width: ${toRem(WELCOME_FIT_MIN_WIDTH_PX)}) and (max-height: ${toRem(WELCOME_FIT_STEP_PX[0])}) {
|
|
10944
|
+
/* Step 1. Each tile restates something the page already says in the badge, the intro or
|
|
10945
|
+
the composer footer, so this is the one block whose absence loses nothing. */
|
|
10946
|
+
.boff-explore-scroll .boff-explore-capabilities { display: none; }
|
|
10947
|
+
}
|
|
10948
|
+
@container boff-explore-pane (min-width: ${toRem(WELCOME_FIT_MIN_WIDTH_PX)}) and (max-height: ${toRem(WELCOME_FIT_STEP_PX[1])}) {
|
|
10949
|
+
/* Step 2. */
|
|
10950
|
+
.boff-explore-scroll .boff-explore-concept-media { aspect-ratio: 4 / 1; }
|
|
10951
|
+
}
|
|
10952
|
+
@container boff-explore-pane (min-width: ${toRem(WELCOME_FIT_MIN_WIDTH_PX)}) and (max-height: ${toRem(WELCOME_FIT_STEP_PX[2])}) {
|
|
10953
|
+
/* Step 3. Title-only cards. The "concept illustration" caveat lives on the picture, so it
|
|
10954
|
+
goes with it; the button's accessible name never depended on the image. Lazy images
|
|
10955
|
+
inside a display:none box are not fetched until there is room to show them. */
|
|
10956
|
+
.boff-explore-scroll .boff-explore-concept-media { display: none; }
|
|
10957
|
+
.boff-explore-scroll .boff-explore-aura { padding-top: 0.75rem; padding-bottom: 0.75rem; }
|
|
10958
|
+
.boff-explore-scroll .boff-explore-aura > :not(:first-child) { margin-top: 0.5rem; }
|
|
10959
|
+
}
|
|
10960
|
+
@container boff-explore-pane (min-width: ${toRem(WELCOME_FIT_MIN_WIDTH_PX)}) and (max-height: ${toRem(WELCOME_FIT_STEP_PX[3])}) {
|
|
10961
|
+
/* Step 4. The badge is the third statement on this screen that answers come from our
|
|
10962
|
+
documentation. The heading beneath it loses its top margin so the hero starts flush. */
|
|
10963
|
+
.boff-explore-scroll .boff-explore-hero-badge { display: none; }
|
|
10964
|
+
.boff-explore-scroll .boff-explore-hero-badge + h1 { margin-top: 0; }
|
|
10965
|
+
}
|
|
10966
|
+
|
|
10920
10967
|
/* ---- Composer dock --------------------------------------------------------------------
|
|
10921
10968
|
Three declarations, each the fallback for the one after it: a plain 1rem where \`max()\`
|
|
10922
10969
|
is unknown, then the measured overlap of any FOREIGN fixed chrome sitting over the
|
|
@@ -12243,7 +12290,12 @@ function ConceptStrip({
|
|
|
12243
12290
|
measureRail();
|
|
12244
12291
|
const onResize = () => measureRail();
|
|
12245
12292
|
window.addEventListener("resize", onResize);
|
|
12246
|
-
|
|
12293
|
+
const observer = typeof ResizeObserver === "function" ? new ResizeObserver(onResize) : null;
|
|
12294
|
+
observer?.observe(el);
|
|
12295
|
+
return () => {
|
|
12296
|
+
window.removeEventListener("resize", onResize);
|
|
12297
|
+
observer?.disconnect();
|
|
12298
|
+
};
|
|
12247
12299
|
}, [measureRail, highlights.length, failed]);
|
|
12248
12300
|
const scrollRail = React.useCallback((direction) => {
|
|
12249
12301
|
const el = railRef.current;
|
|
@@ -12323,7 +12375,7 @@ function ConceptStrip({
|
|
|
12323
12375
|
),
|
|
12324
12376
|
className: "group flex w-40 flex-col overflow-hidden rounded-xl border border-border bg-card text-left shadow-sm transition-colors hover:border-primary/50 hover:bg-accent disabled:cursor-not-allowed disabled:opacity-50 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring sm:w-44",
|
|
12325
12377
|
children: [
|
|
12326
|
-
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: "relative block aspect-[2/1] w-full overflow-hidden bg-muted", children: [
|
|
12378
|
+
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: "boff-explore-concept-media relative block aspect-[2/1] w-full overflow-hidden bg-muted", children: [
|
|
12327
12379
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
12328
12380
|
"img",
|
|
12329
12381
|
{
|
|
@@ -12475,14 +12527,14 @@ function WelcomeState({
|
|
|
12475
12527
|
}) {
|
|
12476
12528
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "boff-explore-aura mx-auto my-auto w-full max-w-3xl px-4 py-4 sm:py-5", children: [
|
|
12477
12529
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "boff-explore-rise text-center", children: [
|
|
12478
|
-
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: "inline-flex items-center gap-1.5 rounded-full border border-border bg-muted px-3 py-1 text-xs font-medium text-muted-foreground", children: [
|
|
12530
|
+
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: "boff-explore-hero-badge inline-flex items-center gap-1.5 rounded-full border border-border bg-muted px-3 py-1 text-xs font-medium text-muted-foreground", children: [
|
|
12479
12531
|
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.Sparkles, { className: "h-3.5 w-3.5" }),
|
|
12480
12532
|
T.badge
|
|
12481
12533
|
] }),
|
|
12482
12534
|
/* @__PURE__ */ jsxRuntime.jsx("h1", { className: "mt-2 text-balance break-words text-2xl font-bold tracking-tight sm:text-3xl", children: title }),
|
|
12483
12535
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mx-auto mt-2 max-w-2xl text-pretty text-sm leading-relaxed text-muted-foreground", children: body })
|
|
12484
12536
|
] }),
|
|
12485
|
-
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: "boff-explore-rise boff-explore-rise-1 mt-4 grid grid-cols-3 gap-2 sm:gap-2.5", children: CAPABILITIES.map(({ icon: Icon, body: capBody }, i) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
12537
|
+
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: "boff-explore-capabilities boff-explore-rise boff-explore-rise-1 mt-4 grid grid-cols-3 gap-2 sm:gap-2.5", children: CAPABILITIES.map(({ icon: Icon, body: capBody }, i) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
12486
12538
|
"li",
|
|
12487
12539
|
{
|
|
12488
12540
|
className: "rounded-xl border border-border/70 bg-card/60 p-2.5 text-center transition-colors hover:border-border sm:p-2.5 sm:text-left",
|