Files
klz-cables.com/.pnpm-store/v10/files/38/812f9d71013c24d95582cd03527998b8a8cf89cf2fab8b8a86ef1c55f28dade0186c58a7436a88486dc4b64ed898ae3ef8d4f47277da2b531e8397e5fb5175
Marc Mintel 5397309103
Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 20s
Build & Deploy / 🧪 QA (push) Failing after 34s
Build & Deploy / 🏗️ Build (push) Has started running
Build & Deploy / 🚀 Deploy (push) Has been cancelled
Build & Deploy / 🧪 Smoke Test (push) Has been cancelled
Build & Deploy / ⚡ Lighthouse (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled
fix(products): fix breadcrumbs and product filtering (backport from main)
2026-02-24 16:04:21 +01:00

157 lines
4.7 KiB
Plaintext

'use client';
import { c as _c } from "react/compiler-runtime";
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
import React from 'react';
import { ChevronIcon } from '../../../../icons/Chevron/index.js';
import { ExternalLinkIcon } from '../../../../icons/ExternalLink/index.js';
import { XIcon } from '../../../../icons/X/index.js';
import { useLivePreviewContext } from '../../../../providers/LivePreview/context.js';
import { useTranslation } from '../../../../providers/Translation/index.js';
import { Popup, PopupList } from '../../../Popup/index.js';
import { PreviewFrameSizeInput } from '../SizeInput/index.js';
import './index.scss';
const baseClass = 'live-preview-toolbar-controls';
const zoomOptions = [50, 75, 100, 125, 150, 200];
export const ToolbarControls = () => {
const $ = _c(14);
const {
breakpoint,
breakpoints,
setBreakpoint,
setPreviewWindowType,
setZoom,
url,
zoom
} = useLivePreviewContext();
const {
t
} = useTranslation();
let t0;
if ($[0] !== breakpoint || $[1] !== breakpoints || $[2] !== setBreakpoint || $[3] !== setPreviewWindowType || $[4] !== setZoom || $[5] !== t || $[6] !== url || $[7] !== zoom) {
const customOption = {
label: t("general:custom"),
value: "custom"
};
let t2;
if ($[9] !== setZoom || $[10] !== zoom) {
t2 = t3 => {
const {
close: close_0
} = t3;
return _jsx(PopupList.ButtonGroup, {
children: _jsx(React.Fragment, {
children: zoomOptions.map(zoomValue => _jsxs(PopupList.Button, {
active: zoom * 100 == zoomValue,
onClick: () => {
setZoom(zoomValue / 100);
close_0();
},
children: [zoomValue, "%"]
}, zoomValue))
})
});
};
$[9] = setZoom;
$[10] = zoom;
$[11] = t2;
} else {
t2 = $[11];
}
let t3;
if ($[12] !== setPreviewWindowType) {
t3 = e => {
e.preventDefault();
setPreviewWindowType("popup");
};
$[12] = setPreviewWindowType;
$[13] = t3;
} else {
t3 = $[13];
}
t0 = _jsxs("div", {
className: baseClass,
children: [breakpoints?.length > 0 && _jsx(Popup, {
button: _jsxs(React.Fragment, {
children: [_jsx("span", {
children: breakpoints.find(bp => bp.name == breakpoint)?.label ?? customOption.label
}), _jsx(ChevronIcon, {
className: `${baseClass}__chevron`
})]
}),
className: `${baseClass}__breakpoint`,
horizontalAlign: "right",
render: t1 => {
const {
close
} = t1;
return _jsx(PopupList.ButtonGroup, {
children: _jsxs(React.Fragment, {
children: [breakpoints.map(bp_0 => _jsx(PopupList.Button, {
active: bp_0.name == breakpoint,
onClick: () => {
setBreakpoint(bp_0.name);
close();
},
children: bp_0.label
}, bp_0.name)), breakpoint === "custom" && _jsx(PopupList.Button, {
active: breakpoint == customOption.value,
onClick: () => {
setBreakpoint(customOption.value);
close();
},
children: customOption.label
})]
})
});
},
showScrollbar: true,
verticalAlign: "bottom"
}), _jsxs("div", {
className: `${baseClass}__device-size`,
children: [_jsx(PreviewFrameSizeInput, {
axis: "x"
}), _jsx("span", {
className: `${baseClass}__size-divider`,
children: _jsx(XIcon, {})
}), _jsx(PreviewFrameSizeInput, {
axis: "y"
})]
}), _jsx(Popup, {
button: _jsxs(React.Fragment, {
children: [_jsxs("span", {
children: [zoom * 100, "%"]
}), _jsx(ChevronIcon, {
className: `${baseClass}__chevron`
})]
}),
className: `${baseClass}__zoom`,
horizontalAlign: "right",
render: t2,
showScrollbar: true,
verticalAlign: "bottom"
}), _jsx("a", {
className: `${baseClass}__external`,
href: url,
onClick: t3,
target: "_blank",
title: "Open in new window",
type: "button",
children: _jsx(ExternalLinkIcon, {})
})]
});
$[0] = breakpoint;
$[1] = breakpoints;
$[2] = setBreakpoint;
$[3] = setPreviewWindowType;
$[4] = setZoom;
$[5] = t;
$[6] = url;
$[7] = zoom;
$[8] = t0;
} else {
t0 = $[8];
}
return t0;
};
//# sourceMappingURL=index.js.map